我有一个网站,它使用了我开发的 Firefox 扩展中实现的一些功能。我的一个网页上的 JavaScript 脚本需要 UniversalXPConnect 权限才能与我的 Firefox 扩展中实现的 XPCOM 组件进行通信。
默认情况下,当我的脚本尝试启用此权限以访问 XPCOM 组件时:
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
...发生以下错误:
错误:来自“ http://example.com ”的脚本被拒绝 UniversalXPConnect 权限。
要启用此权限,当前用户需要在“about:config”Firefox 页面中手动编辑“signed.applets.codebase_principal_support”设置。
从这个页面:http ://www.mozilla.org/projects/security/components/signed-scripts.html我了解到可以显式签署包含需要此权限的脚本的网页。在我签署我的脚本后,用户将不需要手动编辑上述设置。
网站托管在 Drupal CMS 下的 Linux 平台上。
如果您能给我详细的分步说明,我将非常感激我如何签署我的脚本(我应该下载哪些工具,如何创建证书等),以便在按照您的说明编辑 about:config设置将不是必需的。