![](/img/trans.png)
[英]Bucket Policy allows for write access despite only having getObject in policy
[英]Setup AWS IAM instace role policy to GetObject based only on bucket policy
我無法更改公司環境中的 IAM 角色策略。 所以我希望能夠根據存儲桶策略將角色的權限更改為 S3。 我想根據此存儲桶策略將 AWS IAM 實例角色設置為允許“s3:GetObject”。
我的存儲桶策略中有這個:
{
"Sid": "tag-based",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::XY:role/testing"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::bucket1/path1/*",
"arn:aws:s3:::bucket1/path1"
]
},
我在我的 IAM 角色內聯策略中想要這樣的東西 -> 只允許 TagKey 等於'SG'的資源:
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject",
"s3:PutObjectAcl"
],
"Resource": "<HOW TO SETUP IT ONLY FOR RESORUCES WHICH HAVE TAG KEY 'SG?'>",
"Condition": {
"ForAllValues:StringEquals": {
"aws:TagKeys": [
"SG"
]
}
}
}
Is this right way to achieve it?
S3 對基於標簽的授權的支持是部分的,這意味着並非所有操作都支持基於標簽的條件。 這里也進一步提到了這一點。
就您在政策中提到的電話而言, 此處描述了它們如何使用標簽
GetObject
和PutObect
圍繞x-amz-tag-count header
。 這進一步需要另一個名為GetObjectTagging 的權限
“<如何僅為具有標簽鍵“SG”的資源設置它?>”
沒有專門針對資源的此類條款,您可以在上面的鏈接頁面中名為Resource types defined by Amazon S3
的部分下找到相同的條款
總而言之,您嘗試僅通過基於tag
的授權來實現的目標可能無法完全按照您的預期工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.