特征策略 Feature Policy(iframe内功能控制)

背景:最近在开发一些产品经常用到iframe这个古老的标签(由于公司许多产品都存在功能耦合),当被嵌入的站点使用到clipboard api的地方功能无效,还有用到camera microphone 相关api时,刷新后音视频的声音无法自动播放,等等嵌入式使用时的功能无效问题,原来问题的来源是feature policy策略。

概念

  • Web提供的功能和API如果被滥用,可能会带来隐私或安全风险。在某些情况下,您可能希望严格限制在网站上使用此类功能的方式。
  • 特征策略提供一种机制去声明哪些功能(web api)可以使用(或者不能使用),在顶级页面或iframe嵌入式框架中控制哪些(允许列表)可以使用哪些api,借此锁定功能,或限制第三方的内容。
  • 允许针对网站中的特定来源或框架启用/禁用功能。该功能在可用时与Permissions API或特定于功能的机制集成在一起,以检查该功能是否可用.

功能包括

  • 加速器

  • 环境光源感测器

  • 音视频自动播放

  • 摄像功能

  • 麦克风

  • 加密媒体信息

  • 全屏功能

  • 地理位置

  • 陀螺仪

  • 延迟加载

  • Midi

  • 支付请求

  • 画中画(Picture-in-picture)

  • 扬声器

  • USB

  • VR / XR

  • 通过JavaScript api(document.featurePolicy.allowedFeatures())可以枚举全部的功能:

    • [“geolocation”, “midi”, “camera”, “usb”, “autoplay”,…]
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值