我想要的是让 aws cognito 用户组(家庭)读取/写入 S3 存储桶,该存储桶应仅适用于这些用户家庭。
我使用 boto3 python 库创建了一个用户。现在我需要授予该用户对其存储桶中文件夹的访问权限。
我发现了一些建议创建存储桶策略的帖子,如下所示:
policy = {
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Grant user access to his folder",
"Effect": "Allow",
"Principal": "*",
"Action": ["s3:PutObject"],
"Resource": "arn:aws:s3:::BUCKET/users/${cognito-identity.amazonaws.com:sub}",
"Condition": {
"StringLike": {
"cognito-identity.amazonaws.com:sub": [
"us-east-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"us-east-1:yyyyyyyy-xxxx-xxxx-xxxx-xxxxxxxxxx"
]
}
}
}
]}
但事实证明,我们无法在存储桶的策略条件中指定“cognito-identity.amazonaws.com:sub”。
非常感谢任何帮助。
最佳答案
我认为您上面的策略需要位于经过身份验证的用户的 IAM 角色中,而不是存储桶策略的一部分。
关于amazon-web-services - 如何允许 cognito 用户访问他们自己的 S3 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53101155/