如何在另一个模板中引用 SSM 参数
How to reference SSM parameter in another template
如果在云形成中定义一个 SSM 参数,一个这样的模板
KinesisStreamARNParameter:
Type: AWS::SSM::Parameter
Properties:
Name: !Sub "/${Environment}/Services/${Domain}/kinesis_stream_arn"
Type: String
Value: !GetAtt KinesisStream.Arn
如何在定义角色的不同模板文件中使用?我如何在政策资源下提及它?
KinesisFirehoseRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Principal:
Service: firehose.amazonaws.com
Action: sts:AssumeRole
Path: /
Policies:
- PolicyName: KinesisFirehosePolicy
PolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Action:
- kinesis:*
- s3:*
- s3-object-lambda:*
Resource:
- !Sub "${Bucket.Arn}/*"
一般有两种选择:
Export the arn of your KinesisStreamARNParameter
in the outputs. Then use ImportValue 以引用它作为您的第二个模板。
将 arn 作为输入参数传递给您的第二个模板。这将要求您在部署第二个模板时手动提供值,或者创建一些自动化包装器在部署前为您填充该值。
如果在云形成中定义一个 SSM 参数,一个这样的模板
KinesisStreamARNParameter:
Type: AWS::SSM::Parameter
Properties:
Name: !Sub "/${Environment}/Services/${Domain}/kinesis_stream_arn"
Type: String
Value: !GetAtt KinesisStream.Arn
如何在定义角色的不同模板文件中使用?我如何在政策资源下提及它?
KinesisFirehoseRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Principal:
Service: firehose.amazonaws.com
Action: sts:AssumeRole
Path: /
Policies:
- PolicyName: KinesisFirehosePolicy
PolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Action:
- kinesis:*
- s3:*
- s3-object-lambda:*
Resource:
- !Sub "${Bucket.Arn}/*"
一般有两种选择:
Export the arn of your
KinesisStreamARNParameter
in the outputs. Then use ImportValue 以引用它作为您的第二个模板。将 arn 作为输入参数传递给您的第二个模板。这将要求您在部署第二个模板时手动提供值,或者创建一些自动化包装器在部署前为您填充该值。