Spe*_*cer 6 amazon-web-services amazon-iam aws-codecommit aws-codebuild
我正在尝试使用位于另一个 AWS 账户中的 CodeCommit 源来设置 CodeBuild。我相信这可以使用 AssumeRole 来完成,但我没有运气。任何人都可以帮助提供一个示例,说明如何使 CodeBuild 承担另一个帐户中指定的角色来访问 CodeCommit 存储库吗?
目前我的 CodeBuild 角色(在帐户 22222222 中)包括以下策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::11111111:role/Read-CodeCommit"
}
]
}
Run Code Online (Sandbox Code Playgroud)
在帐户 11111111 中,我的 Read-CodeCommit 角色具有以下策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"codecommit:*"
],
"Resource": "arn:aws:codecommit:us-west-2:11111111:dashboard"
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": "codecommit:ListRepositories",
"Resource": "*"
}
]
}
Run Code Online (Sandbox Code Playgroud)
Read-CodeCommit 具有以下信任策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::22222222:root",
"Service": "codebuild.amazonaws.com"
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}
Run Code Online (Sandbox Code Playgroud)
编辑:发布我为可能面临类似问题的任何人提出的解决方案。
我能做的最好的事情就是回避这个问题。我没有将 CodeCommit 设置为源,而是使用包含 CodeCommit 凭据的自定义 ECR 映像。然后构建规范从存储库克隆。
它不像我喜欢的那么干净,但它可以完成工作。
| 归档时间: |
|
| 查看次数: |
1063 次 |
| 最近记录: |