像S3Browser这样的东西会起作用。它有一个 GUI、一个命令行并且可以处理大文件。您可以使用IAM创建一个组,使用策略授予该组对特定 S3 存储桶的访问权限,然后将 IAM 用户添加到该组。
您的 IAM 组策略如下所示:
{
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation",
"s3:ListBucketMultipartUploads"
],
"Resource": "arn:aws:s3:::YOUR_BUCKET_NAME",
"Condition": {}
},
{
"Effect": "Allow",
"Action": [
"s3:AbortMultipartUpload",
"s3:DeleteObject",
"s3:DeleteObjectVersion",
"s3:GetObject",
"s3:GetObjectAcl",
"s3:GetObjectVersion",
"s3:GetObjectVersionAcl",
"s3:PutObject",
"s3:PutObjectAcl",
"s3:PutObjectAclVersion"
],
"Resource": "arn:aws:s3:::YOUR_BUCKET_NAME/*",
"Condition": {}
},
{
"Effect": "Allow",
"Action": "s3:ListAllMyBuckets",
"Resource": "*",
"Condition": {}
}
]
}
将 IAM 用户添加到该组将允许他们使用 S3Browser 并且只有对 YOUR_BUCKET_NAME 的读写访问权限。但是,他们会看到您的其他存储桶的列表,只是无法读取/写入它们。您还需要为每个 IAM 用户生成一个 AWS 访问密钥和秘密,并将这两项提供给使用 S3Browser 的任何人。