Sco*_*eld 5 amazon-s3 amazon-web-services
我正在尝试使用预先签名的URL将文件直接上传到S3存储桶,但在PUT请求上出现AccessDenied(禁止访问403)错误。
桶的CORS配置中允许PUT请求。
难道我还需要更新桶政策,允许s3:PutObject,s3:PutObjectAcl动作?
PS忘记添加。我已经尝试过添加s3:PutObject和s3:PutObjectAcl使用Principal: *,在这种情况下,上传工作得很好,但如何限制上载的访问?它应该仅适用于预签名的URL,对吗?
Sco*_*eld 11
好的,我想出了如何解决它。以下是步骤:
Principal: *为"Principal": {"AWS":"arn:aws:iam::USER-ID:user/username"}。而不是USER-ID:user/username放置您可以在 Amazon IAM 部分找到的所需用户凭证。在此处阅读有关 Principal 的更多信息:https : //docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html。Principal拥有s3:PutObject并s3:PutObjectAcl为需要的区权限。s3:PutObject,它也应该有s3:PutObjectAcl。您可以在 IAM 角色页面(如果您为 Lambda 函数创建单独的角色)或通过函数设计器页面(只读)检查它| 归档时间: |
|
| 查看次数: |
1702 次 |
| 最近记录: |