1

我想让 AWS 账户中的每个人(用户、角色、组)访问使用可以读取上传到CloudFormation的YAML访问 KMS 密钥。如何修改此代码以允许这种情况发生?为了清楚起见,我已经包含了 root 帐户(-'arn:aws:iam::############:root')。我不想单独列出每个用户、组或角色。

谢谢你。

Resources:
  key:
    Type: 'AWS::KMS::Key'
    Properties:
      KeyPolicy:
        Version: 2012-10-17
        Id: key-default-1
        Statement:
          - Sid: "Devkey"
            Effect: Allow
            Principal:
              AWS: 
                - 'arn:aws:iam::############:root'
            Action:
              - 'kms:*'
            Resource: '*'
  SSGSKeyAlias:
    Type: "AWS::KMS::Alias"
    Properties:
      AliasName: !Join [ "/", [ alias, DevKey ] ]
      TargetKeyId:
        Ref: key
4

2 回答 2

2

当您像之前那样授予对根帐户的访问权限时,您可以使用 IAM 管理访问权限(文档参考

完成此操作后,您可以创建 IAM 策略并分配给允许访问 KMS 密钥的用户/组/角色。

有用的阅读将是关于使用 kms 密钥策略的 KMS 文档

于 2017-10-27T20:41:30.280 回答
2

在这里..让它工作。

Resources:
  key:
    Type: 'AWS::KMS::Key'
    Properties:
      KeyPolicy:
        Version: 2012-10-17
        Id: key-default-1
        Statement:
          - Sid: "Devkey"
            Effect: Allow
            Principal:
              AWS: '##AccountNumber##'
            Action:
              - 'kms:*'
            Resource: '*'
  SSGSKeyAlias:
    Type: "AWS::KMS::Alias"
    Properties:
      AliasName: !Join [ "/", [ alias, DevKey ] ]
      TargetKeyId:
        Ref: key
于 2017-10-27T21:47:05.277 回答