我已为在us-west-2
地区上运行的ec2实例分配了具有以下策略的角色-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:Get*",
"s3:List*"
],
"Resource": "*"
}
]
}
,并尝试访问ap-southeast-1
地区的存储桶。问题是每个aws s3
操作都超时。我也尝试过在命令--region ap-southeast-1
中指定区域。
从文档中,我找到了该指针-
仅在同一区域内支持端点。您无法创建 VPC和其他区域中的服务之间的端点。
那么,使用实例中的aws-cli或boto客户端从不同区域访问存储桶的过程是什么?
答案 0 :(得分:0)
我认为不必指定存储桶的区域即可访问它,您可以从此处查看一些boto3示例: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3.Client.get_object
答案 1 :(得分:0)
显然,要访问来自其他区域的存储桶,该实例还需要访问公共互联网。因此,该实例需要具有公共IP或必须在NAT之后。
答案 2 :(得分:0)
我会检查以确保您已将上述权限授予正确的用户或角色。
运行命令;
aws sts get-caller-identity
您可能会认为EC2实例在使用IAM角色时正在使用您设置的凭据。