我想在 Cognito 中使用 Twitter 实现社交登录,并使用 UI 页面中的内置功能对其进行测试,但我找不到任何相关指南来执行此操作。 我的用例是使用 Twitter 凭据对用户进行身份验证并获取用户信息,例如名字、姓氏、电子邮件、国家/地区。
我发现了这个相对较旧的帖子:https://aws.amazon.com/blogs/mobile/announcing-twitter-and-digits-support-for-amazon-cognito/ 但 Cognito 似乎删除了对 twitter 的原生支持?因为在 Cognito 的身份提供商下没有 twitter 选项。 有谁知道这件事发生了什么吗?
从我在 Twitter 文档中发现的关于使用 Twitter 作为 IdP 的内容来看,它似乎没有使用 OpenID Connect 规范,而是使用了一些 OAuth1 自定义扩展(我不确定我所说的是否正确):https://developer.twitter.com/en/docs/twitter-for-websites/log-in-with-twitter/guides/implementing-sign-in-with-twitter 但我没有找到任何 Twitter 的 OpenId Connect 端点,例如 Microsoft 的端点 (https://login.microsoftonline.com/common/v2.0/.well-known/openid-configuration)
有什么方法可以在 Cognito 中实现使用 twitter 登录吗?还要使用 cognito 内置登录 UI 来测试这一点?
最佳答案
据我所知,Twitter 当前的登录机制基于 OAuth 1.0,而不是 OpenID Connect。因此,我建议您使用 OpenID 构建一些自定义身份验证机制(可能已经有开源解决方案),将其链接到 Cognito,并在这个自定义身份验证应用程序中使用 Twitter OAuth 1.0 进行身份验证。换句话说,通过自定义 OpenID 应用程序在 Cognito 和 Twitter 之间架起一座桥梁。
关于amazon-web-services - 在 AWS Cognito 中使用 Twitter 作为身份提供商,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53777527/