首页 > 解决方案 > 如何连接 AWS cognito 和 VK 社交网络?

问题描述

我在 BE 中将 AWS 堆栈用于移动应用程序。我有一个 AWS Cognito 用户池,并且已经组织了 Google、Facebook 和 Apple 的身份验证。现在我需要实现/配置身份验证 throw VK 社交网络。VK 不支持 OpenID,但支持 OAuth 2.0。

不幸的是,我不明白如何实现它。请分享你的经验。

标签: amazon-web-servicesoauth-2.0amazon-cognitoopenidvk

解决方案


OAuth 仅与授权有关。这里没有身份验证。因此,要实现您所需要的,您要么必须自己实现身份验证(并向 Cognito 公开 OIDC 令牌),要么使用可以为您完成的第三方解决方案(无论是否付费)。

虽然描述如何为 OAuth 构建自己的 OIDC 包装器将是至少一些博客文章的主题,但我可以建议使用可以与 VK 集成的现有解决方案。

其中一个解决方案是 Auth0(不,我与它们没有任何关联)。它有一个用于 vKontakte 的连接器。

您基本上需要像这样链接流程:

  1. 配置 Auth0 以使用 VK 进行身份验证
  2. 使用身份池配置 Cognito 和使用 Auth0 的 OIDC 连接器

这将按如下方式工作:

  1. 您调用 Cognito 的 UI,它会将您重定向到 Auth0
  2. 在 Auth0 上,您将有一个重定向到 VK 的按钮
  3. 成功登录后,您将被重定向到 Auth0,在那里您将拥有一个新用户
  4. Auth0 将重定向回 Cognito,并将用户数据从 Auth0 同步到您的用户池

这只是一个例子,可能有更多的提供者可以做同样的事情。


推荐阅读