我的用户对存储桶具有读访问权限。有没有办法在不使用我的密钥的情况下使用用户凭据进行身份验证?
像(伪代码):
auth = new S3Authentication(user, pass)
obj = S3::getObject(obj, auth)
更新 我发现了自己问题的解决方案。见下文。
答案 0 :(得分:1)
提出这个问题的最初原因是因为我的假设是需要使用全局访问和安全密钥来生成相应的Authorization digest header。
事实并非如此。
您可以使用Amazon的IAM创建新的密钥对,以便在进行身份验证时使用。以下是步骤:
创建新用户将生成特定于该用户的新密钥/访问密钥。您可以使用此对来验证S3事务。
顺便说一句,您不应该使用特定于存储桶的权限。在我的情况下,我没有设置存储区权限(甚至没有经过身份验证的用户),它工作得很好。