在使用Google OAuth时如何使用AWS Cognito禁用用户自注册?

时间:2019-12-03 19:49:14

标签: amazon-web-services amazon-cognito

我配置了一个Cognito用户池,以提供对API网关的访问权限,并且运行良好。我使用托管的UI来让用户登录,他们得到了token_id来授予他们对API的访问权限。麻烦的是,这是有限制的,目前任何人都可以通过Google注册为身份提供者。

最终目标是让公司用户通过Google登录,以使事情变得简单。这些用户应首先由管理员创建,然后登录。

我配置了此选项: Cognito User Pool Policies

然而,只有任何人可以通过Google登录,并为他们创建了一个用户。这似乎与该设置直接矛盾。

欢迎任何想法!

1 个答案:

答案 0 :(得分:1)

通过在Cognito中将Google配置为身份提供者,您实际上是在说拥有Google帐户的任何人都可以登录我的应用程序(他们可以做什么取决于您)。然后,您不必在Cognito中为他们创建用户身份,他们已经在Google中拥有了它们。上面显示的选项实际上禁用了Cognito中的SignUp API操作,因此不允许任何人在用户池中自行注册。但是,如果他们拥有Google帐户,则您已经授予他们登录的权限。

如果要将其锁定在公司标识中,则需要使用其他方法,例如SAML身份验证。如果您使用的是GSuite,那么这就是您应该使用的路由,因为GSuite就是您的公司目录,而不是Google帐户