S3 AccessDenied 是否有任何地方的真实日志?
Are there real logs anywhere for S3 AccessDenied?
使用无服务器框架。我正在使用 python 在 lambda 中进行一些图像处理,并将结果放入 S3 存储桶中,以便通过 URL.
公开访问
我花了几个小时阅读了我能找到的每个堆栈溢出答案、示例代码等,以说明这是如何完成的。但是没有骰子。我根本无法创建有效的最低权限。对于此 python 代码:
with open("/tmp/" + filename, "rb") as f:
s3_client.upload_fileobj(f, bucket_name, filename)
用这个大锤子获取权限效果很好:
iamRoleStatements:
- Effect: 'Allow'
Action:
- 's3:*'
Resource: "arn:aws:s3:::*"
但我无法使用激光聚焦的最小权限使其工作:
iamRoleStatements:
- Effect: 'Allow'
Action:
- 's3:PutObject'
- 's3:PutObjectAcl'
- 's3:GetObject'
- 's3:GetObjectAcl'
Resource: "arn:aws:s3:::mah-bucket/*"
- Effect: 'Allow'
Action:
- 's3:ListBucket'
Resource: "arn:aws:s3:::mah-bucket"
堆栈跟踪没有帮助。拒绝访问,仅此而已。任何地方似乎都没有有用的日志。有什么明显的我做错了,或者我可以在某个地方看到有关写入失败的有用信息吗?
最近 iamRoleStatements:
已弃用,而是使用 I am docs for reference
用于写入需要 listing and put permission
的存储桶的细粒度策略示例
iam:
role:
statements:
- Effect: "Allow"
Action:
- "s3:ListBucket"
Resource:
Fn::Join:
- ""
- - "arn:aws:s3:::"
- "bucket-name"
- Effect: "Allow"
Action:
- "s3:PutObject"
Resource:
Fn::Join:
- ""
- - "arn:aws:s3:::"
- "bucket name"
- "/*"
没有加入
provider:
iam:
role:
statements:
- Effect: "Allow"
Action:
- "s3:ListBucket"
Resource: "arn:aws:s3:::bucket-name"
- Effect: "Allow"
Action:
- "s3:PutObject"
Resource: "arn:aws:s3:::buket-name/*"
使用无服务器框架。我正在使用 python 在 lambda 中进行一些图像处理,并将结果放入 S3 存储桶中,以便通过 URL.
公开访问我花了几个小时阅读了我能找到的每个堆栈溢出答案、示例代码等,以说明这是如何完成的。但是没有骰子。我根本无法创建有效的最低权限。对于此 python 代码:
with open("/tmp/" + filename, "rb") as f:
s3_client.upload_fileobj(f, bucket_name, filename)
用这个大锤子获取权限效果很好:
iamRoleStatements:
- Effect: 'Allow'
Action:
- 's3:*'
Resource: "arn:aws:s3:::*"
但我无法使用激光聚焦的最小权限使其工作:
iamRoleStatements:
- Effect: 'Allow'
Action:
- 's3:PutObject'
- 's3:PutObjectAcl'
- 's3:GetObject'
- 's3:GetObjectAcl'
Resource: "arn:aws:s3:::mah-bucket/*"
- Effect: 'Allow'
Action:
- 's3:ListBucket'
Resource: "arn:aws:s3:::mah-bucket"
堆栈跟踪没有帮助。拒绝访问,仅此而已。任何地方似乎都没有有用的日志。有什么明显的我做错了,或者我可以在某个地方看到有关写入失败的有用信息吗?
最近 iamRoleStatements:
已弃用,而是使用 I am docs for reference
用于写入需要 listing and put permission
iam:
role:
statements:
- Effect: "Allow"
Action:
- "s3:ListBucket"
Resource:
Fn::Join:
- ""
- - "arn:aws:s3:::"
- "bucket-name"
- Effect: "Allow"
Action:
- "s3:PutObject"
Resource:
Fn::Join:
- ""
- - "arn:aws:s3:::"
- "bucket name"
- "/*"
没有加入
provider:
iam:
role:
statements:
- Effect: "Allow"
Action:
- "s3:ListBucket"
Resource: "arn:aws:s3:::bucket-name"
- Effect: "Allow"
Action:
- "s3:PutObject"
Resource: "arn:aws:s3:::buket-name/*"