MDN wants to talk to developers like you: https://qsurvey.mozilla.com/s3/a3e7b5301fea

レビューポリシー

この翻訳は不完全です。英語から この記事を翻訳 してください。

Firefox ユーザの安全と権利を守るために、Mozilla はすべてのアドオンに現実的なポリシーを守ることを要求しています。適用されるポリシーの正確な範囲は個々の状況により異なりますが、最も重要なことはアドオンが addons.mozilla.org (以降 AMO)にホストされるかどうかとアドオンの世の中への配布方法によります。

この文書はアドオンの種別ごとに従うべきポリシーの概要を示します。アドオンの種別に関わらず、これらのポリシーは AMO による必須のレビュープロセスの中と、Firefox の必須のコード署名チェックの中で実行されます。

アドオンレビュートラック

AMOに掲載

AMO に掲載されるアドオンは人手によるレビューを受ける必要があります。レビュー承認前のアドオンは掲載されているページの URL を知っている人だけがアクセスできますが、それ以外の人からはアクセスできません。レビューで承認されるとスクリーンショット、説明文、ユーザレビューの情報も含めてアドオンが一般公開の状態になります。検索結果、コレクション、時折実施されるプロモーションの中にも表示されるようになります。既存ユーザは自動的に AMO に公開された新しいバージョンの通知を受け取るようになります。

AMO に掲載されるアドオンのレビューには二つの分類があり、それぞれ以下の要件と特徴があります。

フルレビュー
フルレビュートラックに分類されるアドオンは完全なコードレビューと機能テストが必要です。これらのアドオンは最高の品質が要求されます。その代わり検索時に結果が上位に表示されるようになり、ユーザにとって最も合理的なインストール体験を提供します。
予備レビュー
予備レビュートラックに分類されるアドオンは詳細度は落ちますが完全なコードレビューが必要です。しかし、一般的には機能テストは必要としません。これらのアドオンはセキュリティの問題や深刻なブラウザのユーザビリティの低下は引き起こさないはずですが、それ以外の保証はほとんどありません。結果的に、これらのアドオンは検索結果の表示順が下になり、ユーザがインストールをする前に品質問題の可能性についての警告が表示されます。

非掲載

非掲載アドオンも配布前に AMO にアップロードされる必要がありますが、サイト上でアクセスすることは出来ません。これらのアドオンの配布は公開者によって行われる必要があります。配布方法によって、非掲載アドオンは完全に自動化されたレビューを受け、署名後にコードレビューを受ける可能性が有ります。

非掲載アドオンには二つの分類が有ります。

サイドインストール
「フルレビュー」と対比されることがあるこのレビュートラックは、直接ユーザによるウェブからのインストールというよりはアプリケーションインストーラーにより直接ブラウザへインストールされるアドオンに要求されます。これらのアドオンは自動的に署名されますが、フルレビュートラックのアドオンの基準ととても類似しています。もっとも大きな違いはこの分類のアドオンはアップデートの管理を自分達で行う必要があることです。
ウェブインストール
「予備レビュー」と対比されることがあるこのレビュートラックは、完全にウェブ経由でインストールされるアドオンと直接ユーザがインストールするアドオンのためのものです。要求される事項が最も少ないのは、この分類のアドオンです。

ポリシー

各アドオンレビュートラックに適用される主要なポリシーの概要は下表のとおりです。ポリシーの詳細はページ下部で説明します。各レビュートラックの以下のシンボルはアドオンに対して適用される要件を表しています。

  このレビュートラックではこの要件は対象外
このレビュートラックのアドオンはこの行為を行うことは禁止されています。
このレビュートラックのアドオンはこの要件を満たす必要が有ります
  掲載 非掲載
  フル 予備 サイドインストール ウェブインストール
セキュリティ  
ユーザのデータ、システムやオンラインアイデンティティへの危害を引き起こすこと
セキュリティ脆弱性を作るまたは露出させること
アプリケーション/アドオンのアップデートシステムやブロックリストの改竄
リモートコードの実行¹  
HTTPS サイトのセキュリティを低下させること  
ユーザの同意なしに追加のアドオンやシステムアプリケーションのインストール    
独自のアップデートメカニズムを含めること    

プライバシーとユーザ同意

 
ブラウザやウェブコンテントの予期出来ない変更を行うこと
ユーザにアドオンによる変更を復元出来ないようにすること
アドオンマネージャにアドオンを表示されないようにすること
無効化やアンインストールを出来ないようにすること
保護されていないリモートサーバへの機微情報の送信  
プライベートブラウジングウィンドウの閲覧データの保存  
プライベートブラウジングウィンドウのウェブコンテンツへの個人識別情報の漏えい  
ユーザ同意なしの Firefox の設定の変更    
全てのユーザデータの扱いをプライバシーポリシーに明示    
ユーザ体験  
コアアプリケーション機能の破壊または無効化
アドオンの無効化やアンインストール後にも残る変更を加えること
使いやすさと一貫したユーザ体験の提供    
一般的なユーザへのアピール      
内容  
Mozilla の 利用条件 への抵触  
技術  
全ソースコードのレビュアへの開示 ²
未検証のサードパーティのコードライブラリやフレームワークの利用  
明らからコーディングエラーを含むこと    
他の行儀の良いアドオンとコンフリクトを起こすこと³    
パフォーマンスや安定性の問題を起こすことが知られている API の利用    
¹ Remote code may be executed in documents with the same origin as the code being executed, or, under limited circumstances, in carefully constructed sandboxes. Remote code may never be executed in privileged contexts.
² Unlisted add-ons must provide sources upon request. If an add-on does not pass automated signing validation and is submitted for review, sources should be submitted immediately. Failure to provide sources for an automatically signed add-on upon explicit request may lead to the add-on being blocked.
³ It may not be possible for all add-ons to entirely avoid conflict with all other add-ons. Add-ons which, by nature, cannot operate side-by-side may be allowed to conflict. Conflicts due to poor technical practices will not be tolerated.
⁴ APIs which have been deprecated for performance or stability reasons, including DOM mutation event listeners, synchronous XMLHttpRequests and Storage API calls, and code which re-enters the main event loop, should not be used in add-ons. They may be allowed under limited circumstances, where alternatives are impractical, or be granted a reimplementation grace period, but such exceptions are rare, and in general the APIs should be avoided as a mater of course.
⁵ Separate submission of full source code is required for add-ons which use obfuscation, minification, or transcompilation to generate JavaScript source code, or which include executable binary files, including system executables or libraries. Instructions and tools necessary to reproduce obfuscation may also be required. Add-ons which include only human-readable JavaScript are not required to submit separate source code.
⁶ Users must be able to disable and install the add-on via the Add-on Manager interface. Providing secondary methods of uninstall, such as a system-level uninstaller, while preventing it via the Add-on Manager interface, does not satisfy this requirement.

セキュリティ

通常のウェブページと比較してアドオンは昇格した権限の環境で実行されるため、とても深刻なセキュリティの考慮事項を表面化させます。アドオンはアドオン自身のみならず、ブラウザやウェブページそして最悪の場合ブラウザが実行されているシステム全体にあるセキュリティホールを顕在化させる可能性が有ります。そのため、私たちはセキュリティポリシーをとても深刻に捉えています。そして AMO にホストされているかどうかに関わらずほとんど全てのアドオンに適用しています。私たちは全てのアドオンがアドオン自身のデータとユーザのデータの扱いだけでなく、やりとりするウェブ、ブラウザそしてオペレーティングシステムがセキュアであることを期待しています。

We take user sovereignty and privacy extremely seriously. Whether hosted on AMO or not, we require all add-ons to respect users choices and their reasonable expectations of privacy. In particular, this means that add-ons may not limit users control of their browsers, by making it impossible to permanently change settings (such as the homepage or search engine), preventing users from uninstalling them, hiding their presence from users, or installing toolbar buttons or other UI elements which cannot be permanently removed via the UI customization process.

Features like advertising or certain forms of user activity tracking may be required to be opt-in, or at least opt-out, depending on the privacy and security impact, and whether the feature is necessary for the add-on to function or not. Since these are usually additional monetization features that are unrelated to what the add-on is meant to do, they generally require an opt-in for listed add-ons and an opt-out for unlisted ones. Some forms of tracking, like gathering all visited URLs, are generally forbidden even for unlisted add-ons. The decision to activate or deactivate these features and its implications must be clearly presented to the user.

User Experience

We expect all add-ons to work without significantly degrading users' experience with the browser. In particular, add-ons may not adversely affect browser performance, break built-in features, or damage the user interface. For add-ons listed on AMO, requesting full review, we likewise expect a consistent generally positive user experience for any functionality provided by the add-on.

Content

While we have no interest in controlling the types of functionality provided by add-ons in the wild, there are certain types of content that addons.mozilla.org cannot host. In particular, all content hosted on the site must conform to the laws of the United States, and comply with the Mozilla acceptable use policy.

Technical

We try, as much as possible, not to restrict the freedom of developers to maintain their add-ons as they choose. However, for reasons of security and our ability to effectively review code, we do have certain technical requirements. In particular, potentially dangerous APIs, such as those which evaluate HTML or JavaScript, may only be used in ways which are provably safe, and code which we cannot verify to behave safely and correctly may need to be refactored.

Source Code Submission

Add-ons may contain binary, obfuscated and minified source code, but Mozilla must be allowed to review a copy of the human-readable source code of each version of an add-on submitted for review. In such cases, the author will receive a message when the add-on is reviewed indicating whom to contact at Mozilla to coordinate review of the source code. This code will be reviewed by an administrator and will not be shared or redistributed in any way. The code will only be used for the purpose of reviewing the add-on.

If your add-on contains code that you don't own or can't get the source code for, you may contact us for information on how to proceed.

Reviewers

Add-ons are reviewed by the AMO Reviewer Team, a group of experienced add-on developers that volunteer to help the Mozilla project by reviewing add-ons to ensure a stable and safe experience for users. The Reviewer Guide details how reviewers evaluate add-ons submitted for review. It is an expanded version of the table shown above. Developers will receive an email with any updates throughout the review process. Review times can fluctuate depending on reviewer availability and the complexity of the add-on being reviewed. Regular updates of review queue status are posted in the Add-ons Blog.

Blocklisting

Add-ons that don't meet the bar for Unlisted Web Install may qualify for blocklisting, depending on the extent of their problems. The Add-ons Team will do their best to contact the add-on's developers and provide a reasonable time frame for the problems to be corrected before a block is deployed. If an add-on is considered malicious or its developers have proven unreachable or unresponsive, or in case of repeat violations, blocklisting may be immediate.

Guideline violations should be reported via Bugzilla, under Tech Evangelism > Add-ons. Questions can be posted in the #addons IRC channel.

ドキュメントのタグと貢献者

 このページの貢献者: kenichisak, Uemmra3
 最終更新者: kenichisak,