Permissions-Policy: ограничение возможностей страницы и фреймов
Permissions-Policy позволяет серверу ограничивать использование отдельных возможностей браузера, например камеры или геолокации. Это дополнительное правило документа, а не способ автоматически получить разрешение пользователя.
Назначение
Permissions-Policy позволяет серверу ограничивать использование отдельных возможностей браузера, например камеры или геолокации. Это дополнительное правило документа, а не способ автоматически получить разрешение пользователя.
Как это работает
В заголовке перечисляются директивы и списки разрешённых источников. Пустые скобки запрещают соответствующую возможность в области действия политики. Вложенные документы дополнительно зависят от политики родителя и атрибута allow у iframe.
Пример
Permissions-Policy: camera=(), microphone=(), geolocation=()
Что должно получиться
На поддерживающем нужные директивы браузере документ не сможет использовать перечисленные возможности. Это пример строгого ограничения для страницы, которой они не нужны. Политику нужно согласовать с реальными функциями приложения.
Граница применения и частая ошибка
Поддержка отдельных директив различается. Не копируйте запрет камеры на сервис видеосвязи без проверки. Политика не заменяет HTTPS, обычные разрешения пользователя, CSP или ограничения сетевого доступа.
Самостоятельная проверка
На отдельном стенде проверьте фактический заголовок ответа и предупреждения браузера. Составьте список реально используемых возможностей, затем ограничивайте их по одной. Наличие незнакомой директивы в заголовке не доказывает её применение.