限制IAM用户访问特定的Cognito用户池

时间:2019-03-27 16:00:57

标签: amazon-web-services amazon-cognito amazon-iam

我在Cognito中有三个用户池-一个用于DEV,一个用于UAT,一个用于PROD。我创建了一个IAM用户以使用Cognito API以编程方式访问用户池。效果很好,但我想限制此用户只能访问一个用户池。

然后,我将为其他两个池另外创建两个IAM用户。

Cognito支持“资源级权限”,但我很难理解如何配置此功能以将用户限制为单个用户池。

有人知道这是否可行以及如何解决吗?

1 个答案:

答案 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:*用于演示目的。您应该指定要授予的所有权利。