繁体   English   中英

如何在 cloudformation 中引用 AWS 托管策略 arn?

[英]How to reference AWS managed policy arn in cloudformation?

我将使用 cloudformation 创建一个 IAM 用户,并且需要附加一个 AWS 托管策略AWSAppSyncInvokeFullAccess 我想我应该使用如下代码的托管策略:

Resources:
  publisherUser:
    Type: AWS::IAM::User
    Properties:
      UserName: userName
      ManagedPolicyArns: 
        - !Ref AWSAppSyncInvokeFullAccess
        - !Ref AWSLambdaBasicExecutionRole

但它不起作用,因为AWSAppSyncInvokeFullAccess来自 AWS 而不是来自此模板。 参考政策的正确方法是什么?

这些是现有的 AWS 托管策略。 所以你应该使用他们的完整 ARN ,你可以从 IAM 控制台获得它:

Resources:
  publisherUser:
    Type: AWS::IAM::User
    Properties:
      UserName: userName
      ManagedPolicyArns: 
        - arn:aws:iam::aws:policy/AWSAppSyncInvokeFullAccess
        - arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole

更新

或者使其分区独立:

Resources:
  publisherUser:
    Type: AWS::IAM::User
    Properties:
      UserName: userName
      ManagedPolicyArns: 
        - !Sub "arn:${AWS::Partition}:iam::aws:policy/AWSAppSyncInvokeFullAccess"
        - !Sub "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"

以防万一有人想知道您可以通过单击策略页面上的策略名称找到所有 IAM 策略的 ARN。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM