微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

AWS CloudFormation 自定义权限边界

如何解决AWS CloudFormation 自定义权限边界

是否可以在 AWS CloudFormation 中为 AWS Lambda 的 LambdaExecutionRole 编写自定义权限边界策略?

如果我可以在此代码中为 LambdaExecutionRole 编写所有必要的策略,而不是使用 !Ref!Sub,那可能是最好的。

请参阅 PermissionBoundary 部分

(由于权限边界部分配置错误,此代码不起作用)

LambdaExecutionRole:
    Description: Creating service role in IAM for AWS Lambda
    Type: AWS::IAM::Role
    Properties:
      RoleName: !Sub 'CodeStar-${ProjectId}-Execution${Stage}'
      AssumeRolePolicyDocument:
        Statement:
        - Effect: Allow
          Principal:
            Service: [lambda.amazonaws.com]
          Action: sts:AssumeRole
      Path: /
      ManagedPolicyArns:
        - !Sub 'arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole'
      PermissionsBoundary: !Sub
        Properties:
          PolicyDocument:
            Statement:
            - Action:
              - logs:CreateLogGroup
              - logs:CreateLogStream
              - logs:DescribeLogGroups
              - logs:PutLogEvents
              - xray:Put*
              Effect: Allow
              Resource: '*'

解决方法

遗憾的是你不能这样做。 PermissionsBoundary 需要 ARN 到 IAM 政策。因此,首先您必须创建 AWS::IAM::ManagedPolicy,然后在 PermissionsBoundary 中引用它的 ARN。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。