manifest.json 中的 permissions、host_permissions 与 optional_* 字段。良好的权限设计能提升信任,并减少商店审核期间的问题。
权限策略
常见模式
Background 驱动的功能
为所需的浏览器 API 使用permissions,并仅添加该功能确实需要的主机模式:
可选能力
如果首次使用体验不需要某个功能,就把它保留为可选:实用规则
- 只在功能确实需要时才请求 API 权限。
- 把
host_permissions限定到最小的可工作 origin 集合。 - 对于次要或高级功能,优先使用可选权限。
- 每当新增 background 操作、content script 注入或远程 API 调用时,重新审视权限。
按功能类型设计权限
常见错误
- 在只需要一两个 origin 时却使用
<all_urls>这样宽泛的通配符。 - 把
host_permissions混入一个本可以使用更窄的用户触发工作流就能实现的功能。 - 忘记 content script、web-accessible 资源以及通过
chrome.scripting注入脚本,分别有不同的安全影响。 - 在功能文档中列出权限,却没有解释每个权限存在的原因。
审核清单
- 列出每一个面向用户的功能。
- 把每个功能映射到它确切需要的 API 与主机权限。
- 在可能时,把非核心权限改为可选权限。
- 移除从旧实验中遗留下来的过时权限。
- 在变更后重新测试安装提示和浏览器商店的期望。
下一步
- 在 manifest.json 中保持一份准确的 manifest。
- 在 Web-accessible 资源 中评估页面访问。
- 在 消息通信 中校验边界处理。
- 在 安全清单 中执行发布前的检查。
- 在 Manifest V3 故障排查 中对比
permissions与host_permissions的行为。

