首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用rds的IAM角色:CreateDB集群快照无法创建集群快照

使用rds的IAM角色:CreateDB集群快照无法创建集群快照
EN

Stack Overflow用户
提问于 2017-05-11 10:03:03
回答 2查看 1.6K关注 0票数 1

我希望在EC2实例上创建一个web接口,以“关机”和“启动”RDS Aurora集群,因为它一个月只使用2天。

要做到这一点,我必须:

  • 创建了一个角色 “操作”:“rds:CreateDB集群快照”、“rds:CreateDB群集”、“rds:DeleteDB群集”、“资源”:"arn:aws:rds:us-west-2:123456789:cluster:momtransgrinder-cluster“
  • 将角色与实例关联起来。

当我运行以下命令时:

代码语言:javascript
复制
  aws rds create-db-cluster-snapshot --db-cluster-snapshot-identifier testsnap2 --db-cluster-identifier momtransgrinder-cluster

我犯了个错误

代码语言:javascript
复制
  An error occurred (AccessDenied) when calling the CreateDBClusterSnapshot operation: User: arn:aws:sts::123456789:assumed-role/root/i-47717451 is not authorized to perform: rds:CreateDBClusterSnapshot on resource: arn:aws:rds:us-west-2:123456789:cluster-snapshot:testsnap2

但是,当我将角色改为拥有rds:*时,它就能工作了。必须有创建群集快照所需的隐式其他权限?但是哪一个呢?

EN

回答 2

Stack Overflow用户

发布于 2019-02-01 19:15:28

您定义的操作需要与RDS集群以及您创建的快照相关联。当前,您的Resource字段缺少快照项,这就是您看到错误的原因:

代码语言:javascript
复制
not authorized .. on resource: arn:aws:rds:us-west-2:123456789:cluster-snapshot:testsnap

因此,如果将集群快照添加为资源目标,如下面所示,则应消除此特定错误。

代码语言:javascript
复制
"Resource": [ "arn:aws:rds:us-west-2:123456789:cluster:momtransgrinder-cluster", 
              "arn:aws:rds:us-west-2:123456789:cluster-snapshot:testsnap2" ]

但是,我建议在快照上提供一个通配符条目,前提是您要创建多个快照,其中的标识符很可能只有在运行时才知道。此外,我发现在快照中添加其他相关操作也是成功的。我不确定rds:CreateDBClusterSnapshot是否足够。总之,考虑到你的情况,我会这样做:

代码语言:javascript
复制
  {
      "Action": [
        "rds:CopyDBClusterSnapshot",
        "rds:CopyDBSnapshot",
        "rds:CreateDBClusterSnapshot",
        "rds:CreateDBSnapshot",
        "rds:DeleteDBClusterSnapshot",
        "rds:DeleteDBSnapshot",
        "rds:DescribeDBClusterSnapshotAttributes",
        "rds:DescribeDBClusterSnapshots",
        "rds:DescribeDBSnapshots",
        "rds:DescribeDBSnapshotAttributes",
        "rds:ModifyDBClusterSnapshotAttribute",
        "rds:ModifyDBSnapshot",
        "rds:ModifyDBSnapshotAttribute"
      ],
      "Resource": [
         "arn:aws:rds:us-west-2:123456789:cluster:momtransgrinder-cluster",
         "arn:aws:rds:us-west-2:123456789:cluster-snapshot:*"
      ],
      "Effect": "Allow",
      "Sid": "CreateSnapshot"
  }
票数 3
EN

Stack Overflow用户

发布于 2017-05-11 12:43:51

由于要创建的快照是从另一个现有快照中复制的,因此需要在角色中添加一条语句以允许此操作,如:

代码语言:javascript
复制
{      
     "Action": [
         "rds:CopyDBClusterSnapshot",
         "rds:CopyDBSnapshot"
     ],
     "Effect": "Allow",
     "Resource": "arn:aws:rds:us-west-2:123456789:cluster-snapshot:testsnap2"
}

希望能帮上忙!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43912315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档