Hello
By using following iam policy i have set cross account access to single s3 buckets but it will show all buckets list to another account rather that show only single bucket which i want to share.
Action "s3:ListAllMyBuckets" will list all buckets to another account but if i am not include this action in iam policy it show me error
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"s3:ListAllMyBuckets"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::*"
]
},
{
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::AccountABucketName"
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::AccountABucketName/*"
}
]
}
help me in this query
Yes, i returned to following error when viewing s3 console through login iam user
You don't have permissions to list buckets After you or your AWS administrator have updated your permissions to allow the s3:ListAllMyBuckets action, refresh this page.
I ran into that before as the S3 console needs the ListAllBuckets permission to work. You can then use the ListBucket permission like you have done above to prevent the requester from being able to actually see the files in other buckets but sadly from when I ran into this issue in the past I could find no way to show them only the buckets they had access to via the S3 console.
And how to prevent my client if i am sharing iam user credentials with my clients who have some knowledge of aws and he try to access bucket through direct account login aws url https://us-east-1.console.aws.amazon.com/ instead of given url of bucket https://s3.console.aws.amazon.com/s3/buckets/mybucket-name