Permissions-Policy: geolocation directive
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Der HTTP-Header Permissions-Policy geolocation-Direktive steuert, ob das aktuelle Dokument die Verwendung der Geolocation Schnittstelle erlaubt.
Insbesondere, wenn eine definierte Richtlinie die Nutzung dieser Funktion blockiert, werden Aufrufe von getCurrentPosition() und
watchPosition() dazu führen, dass die Rückruffunktionen mit einem GeolocationPositionError-Code von
PERMISSION_DENIED aufgerufen werden.
Syntax
Permissions-Policy: geolocation=<allowlist>;
<allowlist>-
Eine Liste von Ursprüngen, für die die Berechtigung zur Nutzung der Funktion erteilt wird. Weitere Details finden Sie unter
Permissions-Policy> Syntax.
Standardrichtlinie
Die Standard-allowlist für geolocation ist self. Der oberste Browsing-Kontext und gleichherkömmliche iframes haben standardmäßig Zugriff auf die geolocation-Funktion.
Beispiele
>Grundlegende Verwendung
SecureCorp Inc. möchte geolocation in allen cross-origin iframes außer denen mit Ursprung https://example.com deaktivieren. Dies kann durch die Bereitstellung des folgenden HTTP-Response-Headers erfolgen, um eine Berechtigungsrichtlinie festzulegen:
Permissions-Policy: geolocation=(self "https://example.com")
SecureCorp Inc. muss außerdem ein allow Attribut auf jedem <iframe>-Element einfügen, bei dem geolocation erlaubt sein soll:
<iframe src="https://example.com/map" allow="geolocation"></iframe>
Hinweis:
Die Angabe des Permissions-Policy-Headers auf diese Weise erlaubt geolocation nicht für andere Ursprünge, selbst wenn sie durch das <iframe> allow Attribut erlaubt sind.
Verwendung der Standardrichtlinie
Wenn keine allowlist für geolocation durch einen Permissions-Policy-Response-Header definiert ist, wenden User Agents die Standard-allowlist self an. In diesem Modus ist geolocation automatisch im oberen Browsing-Kontext und in gleichherkömmlichen iframes erlaubt, jedoch nicht in cross-origin iframes.
Um geolocation in einem cross-origin iframe zu erlauben, fügen Sie ein allow Attribut auf dem <iframe>-Element ein:
<iframe src="https://other.com/store-locator" allow="geolocation"></iframe>
Spezifikationen
| Specification |
|---|
| Geolocation> # permissions-policy> |