Bitbucket与AWS CodeDeploy角色信任关系错误集成

时间:2017-08-05 04:49:29

标签: aws-code-deploy bitbucket-pipelines

我正在尝试通过AWS CodeDeploy for Bitbucket

部署我的sampleApplication代码

我已使用此tutorial,我已按照所有步骤操作。信任关系角色就像这样

{
"Version": "2012-10-17",
"Statement": [
{
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::accountId:root"
  },
  "Action": "sts:AssumeRole",
  "Condition": {
    "StringEquals": {
      "sts:ExternalId": "connectionId"
    }
  }
  }
 ]
}

当我创建一个部署组时,我得到的错误是“不能承担角色”。当我选择上述角色作为服务角色ARN *。

{
"Version": "2012-10-17",
"Statement": [
{
  "Effect": "Allow",
  "Principal": {
    "Service": [
      "ec2.amazonaws.com",
      "codedeploy.amazonaws.com"
    ]
  },
  "Action": "sts:AssumeRole"
 }
]
}

但是,当我添加上述信任关系时,我可以创建部署组,但是然后在bitbucket上进行集成并没有工作并抛出错误以添加足够的权限。

1 个答案:

答案 0 :(得分:1)

您发布的任何角色都未授予CodeCommit或S3。

根据您链接的教程,您必须提供对CodeCommit和S3的访问权限。这些可能是您缺少的权限:

{
    "Version": "2012-10-17",
    "Statement": [{
        "Effect": "Allow",
        "Action": ["s3:ListAllMyBuckets", "s3:PutObject"],
        "Resource": "arn:aws:s3:::*"
    }, {
        "Effect": "Allow",
        "Action": ["codedeploy:*"],
        "Resource": "*"
    }]
}