我一直在努力掙扎幾個小時,無法弄清楚。AWS S3 - 如何將IAM用戶限制爲單個存儲桶?
我創建了一個新的用戶,口是心非,我做了一個新的水桶叫鮑勃 - 房子,產生了以下政策:(任何數字我不知道我應該分享的xxx'd出)
{
"Version": "2012-10-17",
"Id": "Policyxxx",
"Statement": [
{
"Sid": "Stmtxxx",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::xxx:user/duplicity"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::bobs-house/*"
}
]
}
我去策略模擬器,並運行一些測試。果然,它表示我可以做任何我想做的用戶複製品,但只能在bobs-house上。如果虛度試圖做任何涉及其他桶的事情,它就會被拒絕。大!
現在我啓動我的FTP客戶端並使用重複的IAM訪問密鑰和密鑰連接到s3.amazonaws.com(使用傳輸的S3協議當然,而不是FTP協議)。我得到「訪問被拒絕」。我無法弄清楚我做錯了什麼。任何幫助,將不勝感激!
編輯:
明白了,感謝約翰的答案如下。我可以使用傳輸連接和僅查看桶的內容,添加文件等,但口是心非(備份軟件)抱怨:
PermanentRedirect. The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint. bobs-house.s3.amazonaws.com
所以我切換格式在口是心非的配置到:
s3://bops-house.s3.amazonaws.com/test
然後我得到這個錯誤:
The request signature we calculated does not match the signature you provided. Check your key and signing method.
我的訪問密鑰&祕密密鑰是絕對正確的。
我不知道AWS做FTP –
你嘗試'在策略模擬器列表buckets'?因爲我不確定Transmit在底層做了什麼,但是它很可能會嘗試一些你沒有批准的操作,而不涉及特定的存儲桶(在這種情況下,你真的需要提交一個bug報告他們)。 –