[英]Amazon S3 files access policy based on IP Address
有沒有辦法根據客戶端IP地址限制存儲在Amazon S3中的文件的訪問權限?
我有一個存儲在那里的文件,只能通過特定的IP地址訪問。 這該怎么做?
是的,雖然我自己沒有用過。
S3支持使用“訪問策略語言”對存儲桶和對象進行粒度控制。 可以使用特定的白名單和黑名單IP語句。 但是,您必須編寫APL語句並上傳它們。
http://docs.amazonwebservices.com/AmazonS3/latest/dev/AccessPolicyLanguage.html
以下是兩個條件部分示例:
白名單
"Condition" : {
"IpAddress" : {
"aws:SourceIp" : ["192.168.176.0/24","192.168.143.0/24"]
}
}
黑名單
"Condition" : {
"NotIpAddress" : {
"aws:SourceIp" : ["192.168.176.0/24","192.168.143.0/24"]
}
}
亞馬遜在限制訪問特定IP地址的 “存儲桶策略示例”下的S3文檔中對此進行了描述:
此語句中的條件標識允許的IP地址范圍為54.240.143。*,但有一個例外:54.240.143.188。
{
"Version": "2012-10-17",
"Id": "S3PolicyId1",
"Statement": [
{
"Sid": "IPAllow",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::examplebucket/*",
"Condition": {
"IpAddress": {"aws:SourceIp": ["54.240.143.0/24", "1.2.3.4/32" ]},
"NotIpAddress": {"aws:SourceIp": "54.240.143.188/32"}
}
}
]
}
您可以在AWS S3控制台中添加類似的內容。 選擇您的存儲桶,單擊Properties選項卡,然后單擊Permissions。 單擊“添加存儲桶策略”並將其粘貼到彈出對話框的表單中。
我修改了Amazon的示例,以顯示如何通過提供JSON數組而不是字符串來在策略中包含多個IP范圍。 “1.2.3.4/32”的“aws:SourceIp”條目表示單個IP地址1.2.3.4也被授予訪問權限。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.