Paillasse/ansible/roles/portail/templates/syllabus-entetes.conf.j2
Adam Belkacemi ec4eae3744 ajoute la visio de classe : Jitsi auto-hébergé, jetons du portail, prof seul modérateur
Jitsi (docker-jitsi-meet, version figée) derrière Nginx sur meet.syllabuslab.fr,
accès par jeton JWT signé par le portail, modération du micro, mains levées
synchronisées avec l'application. Pare-feu : UDP 10000 et pont interne
br-visio (accords d'Adam). Jicofo n'authentifie plus lui-même : il donnait
le rôle de propriétaire aux élèves. Capacité ramenée à 20 VM.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 12:35:35 +02:00

12 lines
969 B
Django/Jinja

# Géré par Ansible (rôle portail). En-têtes communs à tous les sites HTTPS.
# La Content-Security-Policy du portail est posée par Laravel
# (App\Http\Middleware\PolitiqueSecuriteContenu) : elle dépend de la page.
# Attention : un add_header dans un bloc location masque ceux du server.
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "DENY" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
# Caméra, micro et partage d'écran : délégués à la seule visio intégrée
# (étape 15) ; refusés à tout autre site.
add_header Permissions-Policy "camera=(self \"https://{{ portail_domaine_visio }}\"), microphone=(self \"https://{{ portail_domaine_visio }}\"), display-capture=(self \"https://{{ portail_domaine_visio }}\"), geolocation=(), payment=()" always;
add_header Cross-Origin-Opener-Policy "same-origin" always;