目次

セキュリティ勧告

セキュリティ勧告とは、セキュリティの脆弱性に関する情報を報告するための手段です。Pub は、Dart と Flutter パッケージのセキュリティ勧告を公開するために、GitHub Advisory Database を使用しています。

GitHub リポジトリに勧告を作成するには、GitHub のドキュメントのリポジトリのセキュリティ勧告の作成で説明されている GitHub のセキュリティ勧告報告メカニズムを使用します。最初にセキュリティ勧告のドラフトを作成し、GitHub によってレビューされ、中央の勧告データベースに取り込まれます。

pub クライアントのセキュリティ勧告

#

pub クライアントは、依存関係の解決時にセキュリティ勧告を表示します。たとえば、`dart pub get` を実行すると、次の出力が表示されます。

$ dart pub get
Resolving dependencies...
http 0.13.0 (affected by advisory: [^0], 1.2.0 available)
Got dependencies!
Dependencies are affected by security advisories:
  [^0]: https://github.com/advisories/GHSA-4rgh-jx4f-qfcq

解決時に勧告が特定された場合、Dart チームはリンクにアクセスして勧告を確認することを推奨しています。脆弱性がパッケージに影響を与えると判断した場合は、影響を受けないバージョンの依存関係にアップグレードすることを強く検討する必要があります。

セキュリティ勧告の無視

#

セキュリティ勧告がアプリケーションに関係ない場合は、パッケージの `pubspec.yaml` にある`ignored_advisories` リストに勧告 ID を追加することで、警告を抑制できます。たとえば、次の例では、GHSA ID `GHSA-4rgh-jx4f-qfcq` の勧告が無視されます。

yaml
name: myapp
dependencies:
  foo: ^1.0.0
ignored_advisories:
 - GHSA-4rgh-jx4f-qfcq

`ignored_advisories` リストはルートパッケージにのみ影響します。依存関係内の無視された勧告は、独自のパッケージの解決には影響しません。