0

我需要为一个 ec2 实例创建一个 Cloudformation 脚本,该脚本应该具有指定的标签,其中包括运行脚本以创建实例的人的 aws 用户名。获取 IAM 用户名的变量名是什么?我的脚本的标记部分如下所示。虽然可以检索 AccountId,但我无法获取用户名。

    Tags:
    - Key: Name
      Value: !Ref InstanceName
    - Key: team
      Value: !Ref Team
    - Key: awsAccount
      Value: !Sub ${AWS::AccountId}
    - Key: userName
      Value: !Sub ${AWS::IAM::User}
    - Key: purpose
      Value: !Ref Purpose
4

2 回答 2

1

不幸的是,CloudFormation中没有这样的伪参数所有可用参数的列表,例如AWS::AccountId这里。

解决此问题的一种方法是为您的 CloudFormation 模板创建一个参数(就像您使用Purposeor所做的那样team),例如

Parameters:
    UserName:
      Type: String

并在你的引用它Tags

- Key: userName
  Value: !Ref UserName
于 2020-06-02T06:14:14.760 回答
0

一种选择是使用服务目录。aws:servicecatalog:provisioningPrincipalArn自动标记将添加到所有预配资源。

请参阅https://docs.aws.amazon.com/servicecatalog/latest/adminguide/autotags.html

于 2021-01-20T12:51:55.863 回答