我在賬戶 A 中有一個 S3 存盤桶。
該存盤桶使用具有賬戶 B 的規范 ID(具有所有權限)的ACL 授權與賬戶 B共享。
當存盤桶策略為空時,賬戶 B 中的 EC2 實體能夠列出賬戶 A 上的 S3 存盤桶。
該存盤桶是公共的,我想授予對特定公共 IP 和在賬戶 A 上配置的特定 VPC 的訪問權限。
這是存盤桶策略:
{
"Version": "2012-10-17",
"Id": "S3_Bucket_Policy",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::Account_B_Number:role/EC2_Role"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::s3_bucket_name",
"arn:aws:s3:::s3_bucket_name/*"
]
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::s3_bucket_name",
"arn:aws:s3:::s3_bucket_name/*"
],
"Condition": {
"StringNotLike": {
"aws:SourceVpc": "vpc_id"
},
"NotIpAddress": {
"aws:SourceIp": [
"67.100.20.15/32",
"79.190.30.2/32"
]
}
}
}
]
}
我可以從以下 IP 地址和指定的 VPC 訪問 S3 存盤桶,但是,我無法從賬戶 B 的 EC2 實體訪問該存盤桶。
EC2 實體具有以下分配的角色和以下策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "*",
"Resource": [
"arn:aws:s3:::s3_bucket_name",
"arn:aws:s3:::s3_bucket_name/*"
]
}
]
}
為什么我不能從賬戶 B 訪問賬戶 A 中的存盤桶?
uj5u.com熱心網友回復:
您Deny的 S3 存盤桶策略中有一條顯式陳述句,該Allow陳述句會覆寫該陳述句,因此請更改您的Deny陳述句以允許賬戶 B 的角色主體。
此策略評估邏輯在
在這種情況下,您將落入第一個紅色塊,它將做出最終決定 a Deny。
將您更改StringNotEquals為還檢查aws:PrincipalArn帳戶 B 的角色,以便策略不再拒絕帳戶 B 的角色:
"Condition": {
"StringNotLike": {
"aws:SourceVpc": "vpc_id",
"aws:PrincipalArn": "arn:aws:iam::Account_B_Number:role/EC2_Role"
},
"NotIpAddress": {
"aws:SourceIp": [
"67.100.20.15/32",
"79.190.30.2/32"
]
}
}
完整的作業示例:
{
"Version": "2012-10-17",
"Id": "S3_Bucket_Policy",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::Account_B_Number:role/EC2_Role"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::s3_bucket_name",
"arn:aws:s3:::s3_bucket_name/*"
]
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::s3_bucket_name",
"arn:aws:s3:::s3_bucket_name/*"
],
"Condition": {
"StringNotLike": {
"aws:SourceVpc": "vpc_id",
"aws:PrincipalArn": "arn:aws:iam::Account_B_Number:role/EC2_Role"
},
"NotIpAddress": {
"aws:SourceIp": [
"67.100.20.15/32",
"79.190.30.2/32"
]
}
}
}
]
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/318842.html
上一篇:通過lambda跨賬戶訪問S3
下一篇:存盤在s3存盤桶上的檔案大小
