我正在云形成模板中创建托管策略,该模板可锁定对s3容器和密钥路径的访问。我已经跟踪了aws中使用!Join的文档,但是模板格式错误。
Resource:
- !GetAtt ACHSFTPProxyBucket.Arn
-
- !Join
- - ''
- !GetAtt SomeBucketICreated.Arn
- /supersecret/upload/* #note I've also wrapped this in quotes and no dice
我过去使用动作的条件限制访问权限,但想知道是否可以在资源行和!Join上完成。
输出一旦部署在控制台的json编辑器中,应该看起来像这样
Resource:[
"arn:aws:s3:::bucketbname",
"arn:aws:s3:::bucketbname/supersecret/upload/*"
]
我已经在控制台中手动修改了json以测试该策略是否有效,并且它只是在试图弄清楚如何将其转换为模板。
构造与字符串组合的arn的正确方法是什么
答案 0 :(得分:0)
您需要Fn::Sub
。大致情况:
Resource:
- !GetAtt ACHSFTPProxyBucket.Arn
- !Sub '${SomeBucketICreated.Arn}/supersecret/upload/*'