3

我正在尝试使用 AWS Cognito 用户池中的 Microsoft 帐户实现社交登录。

我已按照 AWS 的 Cognito 文档配置用户池以允许 OpenID Connect 身份验证:https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-identity-provider。 html#cognito-user-pools-oidc-providers

以及使用 Microsoft 作为身份提供者的文档:https ://docs.microsoft.com/en-us/azure/active-directory/develop/v2-protocols-oidc - 根据我的理解,如果我有必要使用 V2 端点已经在 Microsoft 注册了一个应用程序:https : //apps.dev.microsoft.com 我想验证@live 帐户

所以我遵循了以下步骤:

因此,我正在尝试使用 Amazon Cognito 提供的登录页面测试社交登录流程,该页面可通过以下 URL 访问:https ://sso-module.auth.eu-central-1.amazoncognito.com/ login?response_type=code&client_id=19tsqvqibqpg617c5kplhqjuba&redirect_uri=https://myapp.com/socialLogin

选择使用配置的 Microsoft IDP 登录后,我被重定向到 Microsoft 登录页面,输入我的 microsoft live 帐户用户名后,我收到错误:输入参数“redirect_uri”的提供值无效。预期值为“ https://login.live.com/oauth20_desktop.srf ”或与为此客户端应用程序注册的重定向 URI 匹配的 URL

此外,当我被重定向到 Microsoft 登录页面时,我在 URL 中看到 redirect_url 参数设置为 cognito 登录页面,而不是我在 cognito 中为应用程序客户端配置的 url

我错过了什么或者我应该怎么做才能完成这项工作?

4

1 回答 1

4

我通过设置https://login.microsoftonline.com/9188040d-6c67-4c5b-b112-36a304b66dad/v2.0作为我在 Cognito 中的 Microsoft OIDC 提供程序中的发行者来修复它。

我还为此提供者 配置了名称电子邮件的属性映射。

在https://apps.dev.microsoft.com/#/application/ {your app id}中配置的重定向 url必须是https://{your Amazone Cognito Domain}/oauth2/idpresponse

并且您需要在您的 Cognito 用户池的应用程序集成 > 应用程序客户端设置中启用提供程序

于 2019-05-19T10:42:20.963 回答