在安装过程中,activeTab 权限不显示任何警告消息。 ### # 选择可选权限 通过包含可选权限,使用户能够从扩展中选择所需的功能和权限。如果某个功能对于扩展程序的核心功能不是必需的,请将其设为可选,然后将 API 或域名移至 optional_permissions 字段中。
{
"name": "Very Secure Extension",
"version": "1.0",
"description": "Example of a Secure Extension",
"permissions": ["activeTab"],
"manifest_version": 2
}
可选权限可以使扩展向用户解释启用相关功能时为何需要特定权限。该扩展可以为用户提供启用功能的选项。 单击确定!将在后台脚本中触发以下事件。
{
"name": "Very Secure Extension",
…
"optional_permissions": [ "tabs", "https://www.google.com/" ],
…
}
然后,将向用户提示以下请求。 也可以在扩展更新中实现。 这样做将使用户可以使用该新功能,而无需禁用该扩展,如果使用新的所需权限进行更新,可能会发生这种禁用的情况。 ### # 限制和加密用户信息 仅请求扩展所需的最少用户数据。扩展程序向用户询问的信息越少,意味着扩展程序受到威胁时所面临的风险就越小。 所有请求的用户数据都应谨慎对待。在具有注册域的安全服务器中存储和检索数据。始终使用 HTTPS 进行连接,并避免将敏感的用户数据保留在扩展的客户端中,因为扩展存储未加密。 - - - 关注 微信公众号「程序化思维」 获取最新 Chrome 插件开发教程。 ← 达到最佳性能 调试扩展 →
document.querySelector('#button').addEventListener('click', function(event) {
// Permissions must be requested from inside a user gesture, like a button's
// click handler.
chrome.permissions.request({
permissions: ['tabs'],
origins: ['https://www.google.com/']
}, function(granted) {
// The callback argument will be true if the user granted the permissions.
if (granted) {
// doSomething();
} else {
// doSomethingElse();
}
});
});