我試圖創建一個IAM Policy來限制對選定的S3存儲桶的訪問。有一些默認S3 Bucket ARNs
,必須總是是存在的,允許模板運營商添加額外Bucket ARNs
列表授予訪問,通過Parameter。如何將「Always Always」值添加到CommaDelimitedList
在我的模板中,BucketARNs
Parameter允許運營商指定長度不受限制的ARN列表。
BucketARNs:
Type: CommaDelimitedList
Description: 'Add the ARN of S3 Buckets that the Get* and List*
access to. When specifying a Bucket 2 values should be supplied one for the
bucket and for objects within that bucket, for example: arn:aws:s3:::MyContentBucket,arn:aws:s3:::MyContentBucket/* .
This defaults to all buckets.'
Default: arn:aws:s3:::*, arn:aws:s3:::*/*
使用該Parameter看起來像
PolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Action:
- s3:Get*
- s3:List*
Resource:
!Ref BucketARNs
我想要做的就是確保,例如該政策文件
arn:aws:s3:::MyMustHaveBucket,
arn:aws:s3:::MyMustHaveBucket/*
ARNS是總是出現在列表BucketARNs
。 Parameter中的Default
可以由操作員刪除 - 是否將唯一的解決方案添加爲Default
值,並在ParameterDescription
警告用戶中添加信息以不刪除所需的ARN?它可能很容易被破壞。
有誰知道確保我總是有這些可用的方法嗎?考慮通過Parameter指定的BucketARN列表是可變的嗎?
理想情況下,我想一個列表連接功能
我真的很喜歡這個。我認爲你的解決方案也適用於這個問題: http://stackoverflow.com/questions/32082228/add-a-parameterized-list-of-security-groups-to-another-security-groups-ingress?rq = 1 – georgealton