从 Bitbucket 管道获取授权 CodeArtifact 令牌 运行
Get authorization CodeArtifact token from Bitbucket Pipelines run
我正在使用 Bitbucket 作为源代码控制服务,我有兴趣开始使用它的管道功能来构建和部署我的应用程序。我正在使用 AWS CodeArtifact 托管我的 Java 个工件。
我遇到的问题是如何从 Bitbucket 管道验证 AWS CodeArtifact。
如何运行
aws sso login --profile XXXX
export CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token ....
是否有处理此问题的最佳实践?
我认为 CODEARTIFACT_AUTH_TOKEN
环境变量的导出非常好。对于 AWS 的首次身份验证,您可能需要查看 Bitbucket OIDC 功能:
- https://bitbucket.org/blog/bitbucket-pipelines-and-openid-connect-no-more-secret-management
- https://support.atlassian.com/bitbucket-cloud/docs/deploy-on-aws-using-bitbucket-pipelines-openid-connect/
本质上,在您的 AWS 账户中设置一个身份提供商,让您的管道只需声明即可承担一个角色
- step:
name: My pipeline
oidc: true
...
(也在某处导出 AWS_ROLE_ARN
)
身份和假定的角色可以设置为每个存储库、部署阶段等的精细许可级别
设置 OIDC 身份提供商可能很麻烦。即使您没有使用 terraform,您也可能有兴趣 https://registry.terraform.io/modules/calidae/bitbucket-oidc/aws/latest 看一看。
我正在使用 Bitbucket 作为源代码控制服务,我有兴趣开始使用它的管道功能来构建和部署我的应用程序。我正在使用 AWS CodeArtifact 托管我的 Java 个工件。
我遇到的问题是如何从 Bitbucket 管道验证 AWS CodeArtifact。
如何运行
aws sso login --profile XXXX
export CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token ....
是否有处理此问题的最佳实践?
我认为 CODEARTIFACT_AUTH_TOKEN
环境变量的导出非常好。对于 AWS 的首次身份验证,您可能需要查看 Bitbucket OIDC 功能:
- https://bitbucket.org/blog/bitbucket-pipelines-and-openid-connect-no-more-secret-management
- https://support.atlassian.com/bitbucket-cloud/docs/deploy-on-aws-using-bitbucket-pipelines-openid-connect/
本质上,在您的 AWS 账户中设置一个身份提供商,让您的管道只需声明即可承担一个角色
- step:
name: My pipeline
oidc: true
...
(也在某处导出 AWS_ROLE_ARN
)
身份和假定的角色可以设置为每个存储库、部署阶段等的精细许可级别
设置 OIDC 身份提供商可能很麻烦。即使您没有使用 terraform,您也可能有兴趣 https://registry.terraform.io/modules/calidae/bitbucket-oidc/aws/latest 看一看。