我配置了一个Cognito用户池,以提供对API网关的访问权限,并且运行良好。我使用托管的UI来让用户登录,他们得到了token_id
来授予他们对API的访问权限。麻烦的是,这是有限制的,目前任何人都可以通过Google注册为身份提供者。
最终目标是让公司用户通过Google登录,以使事情变得简单。这些用户应首先由管理员创建,然后登录。
然而,只有任何人可以通过Google登录,并为他们创建了一个用户。这似乎与该设置直接矛盾。
欢迎任何想法!
答案 0 :(得分:1)
通过在Cognito中将Google配置为身份提供者,您实际上是在说拥有Google帐户的任何人都可以登录我的应用程序(他们可以做什么取决于您)。然后,您不必在Cognito中为他们创建用户身份,他们已经在Google中拥有了它们。上面显示的选项实际上禁用了Cognito中的SignUp
API操作,因此不允许任何人在用户池中自行注册。但是,如果他们拥有Google帐户,则您已经授予他们登录的权限。
如果要将其锁定在公司标识中,则需要使用其他方法,例如SAML身份验证。如果您使用的是GSuite,那么这就是您应该使用的路由,因为GSuite就是您的公司目录,而不是Google帐户