经过 Dart 和 GitHub 团队的共同努力,自 10 月 7 日起,GitHub 的 Advisory Database (安全咨询数据库)、Dependency Graph (依靠项联系图) 和 Dependabot (依靠更新机器人) 开端支撑 Dart 开发者生态,这也意味着 GitHub 为 Dart 和 Flutter 应用的供应链安全供给了全面支撑:

  • GitHub 的 Advisory Database (安全咨询数据库) 为缝隙陈述者和项目维护者之间供给了一个协作渠道,缝隙陈述者和项目维护者能够共同协作,在缝隙被揭露之前私密讨论并修复缝隙。
  • Dependency Graph (依靠项联系图) 主要是分析 Dart / Flutter 项目的 pubspec.yaml 和 pubspec.lock 文件来确认项目依靠联系。
  • Dependabot 是 GitHub 收购并免费开放的一个检测依靠项安全性的工具,一旦你依靠的 Dart package 版别发现新缝隙时,Dependabot 就能够发出通知并主动创立拉取恳求 (Pull Request),将 package 版别升级到没有缝隙的版别。检查过往推文: Dependabot 开端支撑 pub package 版别检测 了解更多。

Dart 产品司理 Michael Thomsen 表明:经过与 GitHub 团队的协作,Dart 开发者们能够在新的缝隙影响到客户之前发现和解决问题;GitHub 的高级产品司理 Courtney Claessens 也说到说,在供应链安全侧全面支撑 Dart,不仅是对开源社区、开发者的支撑,更能够帮助数百万运用 Dart 应用的用户们。

GitHub 供应链安全已支持 Dart 开发者生态

GitHub 供应链安全已支持 Dart 开发者生态

发布 package 到 pub.dev 的安全最佳实践

作为 package 开发者或维护者,当你将 package 发布到 pub.dev 的时分,这里有两条最佳实践的建议:

  1. 运用 GitHub 的安全公告功能在你的代码库房中创立新的安全公告,GitHub 会将这个归入其 Advisory Database (安全咨询数据库) 中。
  2. 为你的 GitHub 代码库房装备安全策略,详细说明用户能够用什么样的方式陈述安全问题。

GitHub 供应链安全已支持 Dart 开发者生态

上述说到的这些安全策略和功能均已面向所有用户发布 (私有库房也只需要加入一点的额外装备),快去试试吧,保护自己的代码安全,刻不容缓。

延伸阅览

  • 在代码库房中创立新的安全公告
  • 关于安全缝隙的和谐发表