授予用户,角色,组访问KMS密钥

时间:2017-10-27 17:39:23

标签: yaml amazon-cloudformation amazon-iam aws-kms

我想授予AWS账户中所有人(用户,角色,组)访问KMS密钥的权限,使用 YAML 可以将其读取上传到 CloudFormation 。如何修改此代码以允许这种情况发生?为了清楚起见,我已经包含了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

2 个答案:

答案 0 :(得分:1)

当您授予对已完成的root帐户的访问权限时,您可以使用IAM管理访问权限(docs reference

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

有用的阅读将是using kms key policies

上的KMS文档

答案 1 :(得分:0)

这里......让它发挥作用。

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
相关问题