Feature Policy是一个新的http响应头属性,允许一个站点开启或者禁止一些浏览器属性和API,来更好的确保站点的安全性和隐私性。 可以严格的限制站点允许使用的属性是很愉快的,而可以对内嵌在站点中的iframe进行限制则更加增加了站点的安全性。
跟其他http安全响应头的设置一样,只需要敲定页面具体的限制策略,然后在http响应头中返回相应的策略即可:
Feature-Policy: vibrate 'self'; usermedia '*'; sync-xhr 'self' example.com
复制代码
语法
Feature-Policy: <directive> <allowlist>
复制代码
可以同时取多个值
- *: 在页面和内嵌iframes里面都允许。
- 'self': 在页面上允许,在内嵌iframes内只允许同源资源使用。
- 'src': 仅在iframe内生效的属性,只允许iframe内src属性与设置头相同的资源使用。
- 'none': 在页面和内嵌中全部禁止。
- <origin(s)>: 允许在特定的origin中使用,多个origins可以用空格隔开。
'*' 和 'none' 单独使用,'self' 和 'src'可以和一个或者多个origins并列使用
允许开启或者禁止的浏览器属性和API列表还没有完全敲定,但目前可以使用的有:
geolocation
midi
notifications
push
sync-xhr
microphone
camera
magnetometer
gyroscope
speaker
vibrate
fullscreen
payment
复制代码