HTTP Permissions-Policy fullscreen

Typ

Die fullscreen-Direktive steuert den Zugriff auf die Fullscreen API zum Anzeigen von Elementen im Vollbildmodus.

Syntax

Die Direktive definiert eine Allowlist für Ursprünge, die Fullscreen-Modus aktivieren dürfen.

http
Permissions-Policy: fullscreen=(self)
Permissions-Policy: fullscreen=(self "https://video-player.com")
Permissions-Policy: fullscreen=()

Direktiven

Die Direktive unterstützt Standard-Allowlist-Werte für präzise Zugriffssteuerung.

self
Erlaubt Fullscreen-Zugriff nur für das Hauptdokument des gleichen Ursprungs. Eingebettete iFrames von anderen Ursprüngen werden blockiert.
origin-list
Liste von Ursprüngen in Anführungszeichen, z.B. "https://cdn.video-player.example.com", die zusätzlich zum Hauptdokument Fullscreen verwenden dürfen. Für Video-Player-Embeds.

Beispiele

Die folgenden Beispiele zeigen typische Anwendungsfälle für Video-Player, Präsentationstools und Gaming-Plattformen.

Video-Streaming mit Fullscreen-Option

Eine Video-Plattform erlaubt Fullscreen-Modus für immersive Video-Wiedergabe.

http
HTTP/1.1 200 OK
Content-Type: text/html
Permissions-Policy: fullscreen=(self)

<!DOCTYPE html>
<html>
<head><title>Video Platform</title></head>
<body>
  <video id="player" controls></video>
  <button id="fullscreen">Fullscreen</button>
  <script>
    document.getElementById('fullscreen').addEventListener('click', () => {
      document.getElementById('player').requestFullscreen();
    });
  </script>
</body>
</html>

Embedded Video-Player mit Fullscreen

Eine News-Site erlaubt einem eingebetteten Video-Player Fullscreen-Zugriff.

http
HTTP/1.1 200 OK
Content-Type: text/html
Permissions-Policy: fullscreen=(self "https://player.video-cdn.example.com")

<!DOCTYPE html>
<html>
<head><title>News Article</title></head>
<body>
  <article>Breaking News Story</article>
  <iframe src="https://player.video-cdn.example.com/embed/video123"
          allow="fullscreen"
          allowfullscreen></iframe>
</body>
</html>

REST-API ohne Fullscreen

Ein API-Endpunkt deaktiviert Fullscreen-API für maximale Kontrolle.

http
HTTP/1.1 200 OK
Content-Type: application/json
Permissions-Policy: fullscreen=()

{
  "status": "success",
  "video_metadata": {}
}

Vorteile für die Systemarchitektur

  • Verhindert unerwünschten Fullscreen-Modus durch eingebettete Drittanbieter-Inhalte
  • Schützt vor Phishing-Angriffen via Fake-Fullscreen-Overlays
  • Ermöglicht immersive Experiences für vertrauenswürdige Video- und Gaming-Inhalte
  • Reduziert UX-Probleme durch unkontrollierten Fullscreen-Zugriff

Spezifikation

Definiert in der W3C Fullscreen API Spezifikation. Erfordert User-Gesture (Klick, Tap) zum Aktivieren. Browser zeigen Exit-Hinweis beim Fullscreen-Eintritt.

Weitere Spezifikationen

Permissions-Policy Header, Content-Security-Policy Header