S3 bucket in account A has below policy
sid:whitelistIp
Effect: Deny
Principal: *
Resource :
arn:aws:s3:::my-s3
arn:aws:s3:::my-s3/*
Condition
NotIpaddress
awsSourceIP
[ list of Ips ]
StringsNotEqual
awsourcevpce
[ List of VpceIds ]
Sid: DenyNonSSLTraffic
Effect: Deny
Principal: *
Resource :
arn:aws:s3:::my-s3
Condition
Bool
"aws:secureTransport": "false"
Sid: AllowspecificIamRoles
Effect: Allow
Principal: *
Action:
s3:ListBucket
s3:DeleteObject
s3:GetObject
s3:PutObject
Resource :
arn:aws:s3:::my-s3
arn:aws:s3:::my-s3/*
Condition:
StringsLike:
awsuserId: [ List of userIds ]
Now from Account B I am trying to read objects from lambda function.
s3_client.list_objects()
This methods works
But when i use s3_client.download_file()
this gives me Access Denied error
I have verified Lambda has sufficient permissions to read from S3.
Also one Question if i give bucket policy do still i have to specify ACL for cross account access?