Довідник термінів / Permissions-Policy
Permissions-Policy
Permissions-Policy - це HTTP-заголовок, який вмикає чи вимикає доступ сторінки та вбудованих у неї фреймів до можливостей браузера: камери, мікрофона, геолокації, датчиків тощо. Раніше цей заголовок називався Feature-Policy. Він обмежує, що може робити ваш сайт і сторонній код на ньому.
Перевірте свій сайт
Політика складається з переліку можливостей і дозволених для них джерел. Наприклад, camera=() повністю забороняє камеру, geolocation=(self) дозволяє геолокацію лише вашому домену, а microphone=(self "https://example.com") - ще й одному зовнішньому.
Основна користь - обмежити сторонній код. Якщо на сторінці є рекламні чи аналітичні скрипти у фреймах, політика не дасть їм тихо попросити доступ до камери чи геолокації користувача. Навіть якщо ваш власний код скомпрометують, вимкнені можливості залишаться недоступними.
Заголовок не замінює запит дозволу в користувача - браузер усе одно спитає. Він задає верхню межу: якщо можливість вимкнена політикою, запит навіть не з'явиться. Незадані можливості працюють за замовчуванням браузера, тому варто явно вимикати те, що сайту точно не потрібне.
Приклад
Permissions-Policy: geolocation=(self), camera=(), microphone=()
Часті помилки
- Досі використовують старий заголовок Feature-Policy зі старим синтаксисом. Його замінив Permissions-Policy з іншим форматом значень.
- Плутають синтаксис: пишуть geolocation 'self' як у CSP, тоді як тут потрібно geolocation=(self) з дужками.
- Думають, що заголовок сам питає дозвіл у користувача. Ні, він лише дозволяє або забороняє можливість; сам запит робить браузер.
- Не вимикають непотрібні можливості явно, і сторонні фрейми зберігають доступ за замовчуванням браузера.
Повʼязані терміни
Знайшли проблеми?
Повільний хостинг, проблеми з SSL або сайт часто лежить? Переїжджайте на TomisHost: швидкий хостинг з безкоштовним SSL, щоденними бекапами та допомогою з переносом.
Хостинг TomisHost