我需要一些关于云表单模板的指导。
我有一个名为test1.yaml
的堆栈,在那里我创建了一个名为S3Role的IAM角色。
现在我有了另一个名为test2.yaml
的堆栈,在那里我创建了一个托管策略来附加到现有的iam角色。
现在,我想在托管策略的test1.yml
文件中调用S3Role。
有人能帮我写剧本吗?
发布于 2022-03-29 09:57:55
为在CloudFormation模板中交叉引用AWS资源提供完整的脚本。
test1.yaml具有一个IAM角色(逻辑ID: IAMRole),我们通过输出块导出该角色。还请注意,Output块的缩进与Resources块的缩进相同。
输出块有许多用途。来自AWS文件
可选输出部分声明输出值,可以导入到其他堆栈(创建跨堆栈引用)、响应返回(用于描述堆栈调用)或在AWS CloudFormation控制台上查看。
test1.yaml
Resources:
IAMRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument:
Version: 2012-10-17
Statement:
- Sid: TrustPolicy
Effect: Allow
Principal:
Service:
- ec2.amazonaws.com
Action: sts:AssumeRole
ManagedPolicyArns:
- arn:aws:iam::aws:policy/AmazonS3FullAccess
Path: /
RoleName: IAMRole
Outputs:
ExportIAMRole:
Description: Export the IAMRole to use in test2.yaml
Value: !Ref IAMRole
Export:
Name: IAMRole
在test2.yaml中,我们通过引用我们在Export块下指定的名称来导入值。
test2.yaml
Resources:
IAMPolicy:
Type: AWS::IAM::ManagedPolicy
Properties:
ManagedPolicyName: IAMPolicy
PolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Action:
- kms:ListAliases
- kms:Encrypt
- kms:Decrypt
Resource: "*"
Roles:
- !ImportValue IAMRole
https://stackoverflow.com/questions/62347628
复制相似问题