Cognito授权OAuth2身份提供商中的端点

问题描述

试图永远解决这个问题,我不认为这应该那么复杂...

我有一个要指向Cognito的带有OAuth2连接的AzureAD设置,以便可以在用户池中对用户进行身份验证,取回令牌并调用AppSync API等。这里重要的注意事项是,我不能在Amplify中使用当前情况。

我已将我的App Client配置如下:

enter image description here

ngrok URL是因为我正在开发需要隧道的基于云的应用程序。我在那里有多个URL,希望我能得到一个有效的URL。

要在Azure中配置OAuth2连接,要求输入3个URL,

授权,标记和刷新。
这是我在这些字段中输入的值

enter image description here

当我通过此连接启动身份验证过程时,出现redirect_mismatch错误。我不知道为什么。当我打开HostedUI时,它显示的很好,但是它指向登录而不是授权。但是,如地址栏末尾所示,redirect_uri是localhost:3000/。

enter image description here

很明显,我缺少了一些东西,但是我不知道该怎么办。我在Azure一侧的URL配置中是否应该有其他参数?有人以这种方式将两者联系起来吗?该公司坚持这一流程,但我实在无法解决这个问题。

感谢所有帮助,谢谢。

注意:可以在Azure的侧面配置带有更多参数自定义OAuth2连接,这是应该的吗?但是,我不知道该在这些额外字段中添加什么。

enter image description here

解决方法

如果是Bot身份验证(在我的情况下就是这种情况),请在回调URL中添加以下内容:

https://token.botframework.com/.auth/web/redirect

这可以在对机器人进行身份验证时打开身份验证窗口。