安全咨询
安全咨询是报告安全漏洞信息的一种方式。Pub 使用 GitHub Advisory Database 发布 Dart 和 Flutter 包的安全咨询。
要在 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
列表中来抑制警告。例如,以下配置会忽略 GHSA 标识符为 GHSA-4rgh-jx4f-qfcq
的安全咨询
yaml
name: myapp
dependencies:
foo: ^1.0.0
ignored_advisories:
- GHSA-4rgh-jx4f-qfcq
ignored_advisories
列表仅影响根包。您依赖项中忽略的安全咨询不会影响您自己包的依赖解析。