如何限制您的工作流程仅由组织成员运行[Github-actions]



我的组织希望在我们的公共转发上使用我们的CI工具。目前,任何人都可以触发工作流程并侵蚀我们的AWS帐户。有没有办法设置我们的工作流程,使其只能由我们的组织成员运行?

您不需要更改任何默认设置,因为只有对您的repo具有写访问权限的用户才能触发操作,并且默认情况下,公众不应具有直接写访问权限。

不幸的是,目前无法检查您的组织是否包含触发工作流的github.actor

如果您拥有GitHub Enterprise,则可以创建一个受保护的环境,在该环境中,工作流运行前需要获得批准。

从技术上讲,可以根据用户名列表(如下所示(检查谁在触发操作,但没有什么能阻止具有写入权限的人修改工作流yml,将自己添加到可以触发workflow_dispatch操作的用户列表中因此不建议这样做

if: contains('["kingthorin","lpoulter"]', github.actor)

例如:

name: Docker Build Action
on:
workflow_dispatch:
jobs:   
build:
if: contains('["kingthorin","lpoulter"]', github.actor)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build the Docker image
run: docker build .

相关内容

最新更新