3

私が開発した Firefox 拡張機能に実装されたいくつかの機能を使用する Web サイトがあります。Web ページの 1 つで JavaScript スクリプトを使用するには、Firefox 拡張機能に実装されている XPCOM コンポーネントと通信するために UniversalXPConnect 権限が必要です。

デフォルトでは、スクリプトが 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この特権を必要とするスクリプトを含む Web ページに明示的に署名できることを知りました。スクリプトに署名した後、ユーザーは上記の設定を手動で編集する必要はありません。

ウェブサイトは、Drupal CMS の下の Linux プラットフォームでホストされています。

スクリプトに署名する方法 (どのツールをダウンロードする必要があるか、証明書を作成する方法など) について詳細なステップバイステップの手順を教えていただければ幸いです。設定不要となります。

4

2 に答える 2

1

Firefox 16 の時点で、universalXPconnect のサポートが削除されたように見えるため、スクリプトへの署名はおそらく機能しません。方法はわかりませんが、権限を追加するにはアドオンを使用する必要があります。https://bugzilla.mozilla.org/show_bug.cgi?id=546848

于 2012-09-08T20:16:23.160 に答える
0

EnablePrivilege は Firefox 15 で無効になり、Firefox 17 で削除されます。

これをチェックしてください:

https://developer.mozilla.org/en-US/docs/Bypassing_Security_Restrictions_and_Signing_Code

于 2012-10-05T15:00:31.900 に答える