我要做的是创建一个IAM策略,只允许访问某个S3存储桶,我想将该S3存储桶作为参数传递 .
从AWS的文档中,这是IAM策略CloudFormation模板的样子:
"RolePolicies": {
"Type": "AWS::IAM::Policy",
"Properties": {
"PolicyName": "root",
"PolicyDocument": {
"Version" : "2012-10-17",
"Statement": [ {
"Effect": "Allow",
"Action": "*",
"Resource": "*"
} ]
},
问题是,你如何使“资源”成为一个参数?参数应该是S3存储桶的arn(例如:arn:aws:s3 ::: s3-bucket-name) . 我会简单地输入一个字符串类型参数并输出整个arn,还是像AWS :: S3 :: Bucket类型?无论哪种方式,我不确定在“资源”之后输入什么 .
谢谢!
1 回答
您可以将Ref与Fn::Join或Fn::Sub一起使用
例如:
使用 Ref 和 Fn::Join
使用 Fn::Sub :
有关模板参数的更多信息here