Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services AWS Cognito UserPool vs IdentityPool:IdentityPool是强制性的吗?_Amazon Web Services_Amazon Cognito - Fatal编程技术网

Amazon web services AWS Cognito UserPool vs IdentityPool:IdentityPool是强制性的吗?

Amazon web services AWS Cognito UserPool vs IdentityPool:IdentityPool是强制性的吗?,amazon-web-services,amazon-cognito,Amazon Web Services,Amazon Cognito,AWS Cognito是否必须使用IdentityPool 我的用例: 我的web应用程序有可以自我注册的用户,这些用户将被添加到我设置的Cognito用户池中。我只想为经过身份验证的用户(即,属于authenticatedRole IAM角色的用户)提供对后端资源的访问。我的需求非常简单,一个经过身份验证的角色就足以处理我的应用程序的资源授权需求,我只想拒绝未经身份验证的用户访问所有后端资源 仅使用UserPool就可以做到这一点吗?如果可以,我该如何实现这一点 注意:我使用CDK将我的基础设

AWS Cognito是否必须使用IdentityPool

我的用例:

我的web应用程序有可以自我注册的用户,这些用户将被添加到我设置的Cognito用户池中。我只想为经过身份验证的用户(即,属于authenticatedRole IAM角色的用户)提供对后端资源的访问。我的需求非常简单,一个经过身份验证的角色就足以处理我的应用程序的资源授权需求,我只想拒绝未经身份验证的用户访问所有后端资源

仅使用UserPool就可以做到这一点吗?如果可以,我该如何实现这一点


注意:我使用CDK将我的基础设施定义为代码。

使用标识池对Cognito来说绝对不是强制性的。它完全基于用例。这里有几件事需要澄清

用户池-用于身份验证 身份池-用于授权

基本上,如果希望最终用户注册、登录,然后访问AWS资源或进行AWS API调用,则必须使用标识池。假设您有一个游戏应用程序,最终用户可以通过FB、Google或本机(用户名和密码)登录。这是身份验证,这里我们将使用Cognito用户池。现在,用户已登录并正在玩游戏。他们得分很高。这个高分可能需要为用户添加到S3或DynamoDB表记录中。为此,将使用标识池。身份池将帮助您出售最终用户可以使用的临时AWS凭据

我相信在您的用例中,用户池应该足够了。您可以通过Cognito为最终用户返回的访问令牌来授予对资源的访问权