gpt4 book ai didi

oauth-2.0 - 蔚蓝广告 : code flow with PKCE: id_token is not enabled for the application

转载 作者:行者123 更新时间:2023-12-05 06:07:06 25 4
gpt4 key购买 nike

我正在尝试将 React 单页应用 (SPA) 与 Azure AD 集成。我正在关注文档(例如 scenario )并使用来自 react-aad-msal 的示例看看事情是否在基本层面上有效。

但是,当我尝试访问 Microsoft 登录页面时出现以下错误:

AADSTS700054: response_type 'id_token' is not enabled for the application.

现在,文档非常清楚,对于 SPA,使用 PKCE 的身份验证代码流是必经之路,而您 shouldn't use the implicit grant flow因为it's insecure .这意味着对类似问题(例如 this onethis other one)的现有答案建议盲目地打开隐式流的设置是不充分的。

是否可以在不使用隐式流程的情况下为 SPA 启用登录(ID token )和 API 访问(访问 token )?

(我还不确定,但 react-aad-msal 也有可能正在使用隐式流。我还没有找到任何设置来告诉它哪个流到使用。)

最佳答案

我遇到了这个构建 Blazor WASM(.NET 6 和所有最新的库),但我认为我的解决方案可能仍然适用于某些人。

完成教程后here尽可能接近,我仍然收到“未启用 id_token”消息。我注意到让我很困惑的一件事是关于注册客户端应用程序的教程的这一部分: enter image description here

但如果您在 Azure 门户中查看,实际的复选框似乎说明了相反的情况: enter image description here

我将此归因于教程中的一个错误,并让他们不加检查地认为应该允许我使用授权代码流。什么都试过了,还是收到同样的信息。准备对整个问题下注,我同时启用了访问 token 和 ID token 。

开始工作了!但是查看网络流量,它实际上在访问应用程序时多次调用/authorize 端点。第一次使用 response_type=id_token,然后使用 response_type=code

最终意识到这是由应用服务上部署的/authsettings 资源引起的。 Azure 正在尝试使用 response_type=id_token 向应用服务本身验证我的身份。

在转移到一个没有任何身份验证设置的新应用服务后,仅依靠应用程序的配置来重定向未经身份验证的用户,身份验证代码流有效,应用注册中的复选框未选中。

关于oauth-2.0 - 蔚蓝广告 : code flow with PKCE: id_token is not enabled for the application,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65594747/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com