我在Cognito中有三个用户池-一个用于DEV,一个用于UAT,一个用于PROD。我创建了一个IAM用户以使用Cognito API以编程方式访问用户池。效果很好,但我想限制此用户只能访问一个用户池。
然后,我将为其他两个池另外创建两个IAM用户。
Cognito支持“资源级权限”,但我很难理解如何配置此功能以将用户限制为单个用户池。
有人知道这是否可行以及如何解决吗?
答案 0 :(得分:1)
您可以使用以下内容:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "cognito-idp:ListUserPools",
"Resource": "*"
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": "cognito-idp:*",
"Resource": <Pool ARN>
}
]
}
如果您不希望用户能够列出所有池,则摆脱“列出用户池”部分。另外,我仅将cognito-idp:*
用于演示目的。您应该指定要授予的所有权利。