从 gitlab webhook 在 aws 上开始部署并保护流程
Starting a deploy on aws from a gitlab webhook and securing the process
我想在推送到我的 gitlab 存储库上的特定分支时使用 aws 触发部署。我可以使用 webhook 来做到这一点,设置如下:
- 我已经通过 API 网关创建了一个端点,调用时会触发 lambda 函数。
- lambda 函数使用存储在 S3 中的凭据检查存储库并部署结果
- 在 gitlab 中,我创建了一个 webhook,每当我推送到特定分支时,它都会调用 API 网关端点
这个设置很好,我只有一个问题:
我不知道如何在 gitlab webhook 中包含凭据。因此 API 网关端点必须可公开访问。所以有人可以调用 URL 并在我不想要的时候触发部署。
我能以某种方式保护这个过程吗?
我也在构建这种工作流程,我注意到你在 Gitlab 中有一个秘密令牌,当触发 webhook 时,GitLab 在 headers 中发送 "X-Gitlab-Token",你可以用它来决定请求是否合法。
我想在推送到我的 gitlab 存储库上的特定分支时使用 aws 触发部署。我可以使用 webhook 来做到这一点,设置如下:
- 我已经通过 API 网关创建了一个端点,调用时会触发 lambda 函数。
- lambda 函数使用存储在 S3 中的凭据检查存储库并部署结果
- 在 gitlab 中,我创建了一个 webhook,每当我推送到特定分支时,它都会调用 API 网关端点
这个设置很好,我只有一个问题:
我不知道如何在 gitlab webhook 中包含凭据。因此 API 网关端点必须可公开访问。所以有人可以调用 URL 并在我不想要的时候触发部署。
我能以某种方式保护这个过程吗?
我也在构建这种工作流程,我注意到你在 Gitlab 中有一个秘密令牌,当触发 webhook 时,GitLab 在 headers 中发送 "X-Gitlab-Token",你可以用它来决定请求是否合法。