GitLab CI/CD
最后更新于
最后更新于
对应的官方文档地址
Bitwarden 提供了一种使用 Bitwarden Secrets Manager CLI 将机密注入 GitLab CI/CD 流水线的方法。这使您可以在 CI/CD 工作流程中安全地存储和使用机密。开始:
在这个步骤中,我们将把访问令牌保存为 GitLab CI/CD 变量。该令牌被用于使用 Bitwarden Secrets Manager API 进行身份验证以及检索机密。
在 GitLab 中,导航到您的项目的 设置 → CI/CD 页面。
在变量部分中选择展开。
选择添加变量。
勾选隐藏变量标记。
将键命名为 BWS_ACCESS_TOKEN
。这是 Secrets Manager CLI 用于进行身份验证的变量。或者,如果您需要将键命名为其他名称,请稍后在 bws secret get
行中指定 --access-token NAME_OF_VAR
。
在另一个选项卡中打开 Secrets Manager Web 应用程序,然后创建一个访问令牌。
返回 GitLab,将新创建的访问令牌粘贴到值字段中。
选择添加变量以保存。
接下来,我们编写一个简单的 GitLab CI/CD 工作流文件。在您的代码库的根目录中创建一个名为 .gitlab-ci.yml
的文件,并包含以下内容:
说明:
BWS_VER
是要安装的 Bitwarden Secrets Manager CLI 的版本。这里,我们自动获取最新的版本。您也可以通过将其更改为指定的版本来固定正在安装的版本,例如 BWS_VER="0.3.1"
。
534cc788-a143-4743-94f5-afdb00a40a41
和 9a0b500c-cb3a-42b2-aaa2-afdb00a41daa
是存储在 Secrets Manager 中的机密的引用标识符。您的访问令牌所属的服务账户必须能够访问这些特定的机密。
npm run start
是一个命令,它期望通过 bws
获取的机密值。请将其替换为运行您的项目所需的相关命令。
机密被存储为环境变量。避免运行那些会将这些机密输出到日志中的命令非常重要。
在左侧,选择构建 → 流水线,然后在页面右上角选择运行流水线。在页面上选择运行流水线以运行刚创建的流水线。