Permissions-Policy: geolocation
Das HTTP-Permissions-Policy
-Header
geolocation
-Direktive steuert, ob das aktuelle Dokument die
Geolocation
-Schnittstelle verwenden darf.
Konkret gesagt, wenn eine definierte Richtlinie die Nutzung dieser Funktion blockiert, führen Aufrufe von
getCurrentPosition()
und
watchPosition()
dazu, dass die Rückruffunktionen dieser Methoden mit einem GeolocationPositionError
-Code von
PERMISSION_DENIED
aufgerufen werden.
Standardmäßig kann die Geolocation-API in Top-Level-Dokumenten und deren gleichoriginigen Kindelementen verwendet werden. Diese Direktive erlaubt oder verhindert, dass Cross-Origin-Frames auf die Geolocation zugreifen. Dies schließt gleichoriginige Frames mit ein.
Syntax
Permissions-Policy: geolocation=<allowlist>;
<allowlist>
-
Eine Liste von Ursprüngen, für die die Erlaubnis zur Nutzung der Funktion erteilt wird. Weitere Details finden Sie unter
Permissions-Policy
> Syntax.
Standardrichtlinie
Die Standard-Zulassungsliste für geolocation
ist self
.
Beispiele
Allgemeines Beispiel
SecureCorp Inc. möchte die Geolocation-API in allen Browser-Kontexten deaktivieren,
außer für seinen eigenen Ursprung und solche, deren Ursprung https://example.com
ist. Dies kann durch die Auslieferung des folgenden HTTP-Antwort-Headers zur Definition einer Berechtigungsrichtlinie erfolgen:
Permissions-Policy: geolocation=(self "https://example.com")
Mit einem <iframe>-Element
FastCorp Inc. möchte geolocation
für alle Cross-Origin-Kindframes deaktivieren,
mit Ausnahme eines bestimmten <iframe>
. Dies kann durch die Auslieferung des folgenden
HTTP-Antwort-Headers zur Definition einer Berechtigungsrichtlinie erfolgen:
Permissions-Policy: geolocation=(self)
Dann fügen Sie ein allow-Attribut zum
<iframe>
-Element hinzu:
<iframe src="https://other.com/map" allow="geolocation"></iframe>
Interessanterweise können allow
-Attribute Funktionen selektiv in bestimmten Frames aktivieren und in anderen deaktivieren, selbst wenn diese Frames Dokumente desselben Ursprungs enthalten.
Spezifikationen
Specification |
---|
Geolocation # permissions-policy |
Browser-Kompatibilität
BCD tables only load in the browser