gpt4 book ai didi

java - Oauth v2 承载 token 具有 Oauth v1 属性

转载 作者:行者123 更新时间:2023-12-03 06:48:55 27 4
gpt4 key购买 nike

我有一个使用 Azure Active Directory 的 Java 后端应用程序。我正在使用 oauth2 不记名 token 登录。在后端,我正在搜索并使用 oauth2 属性“preferred_username”并且它有效。但是,当我从 postman /insomnia 发送登录请求时,有 oauth v1 token ,并且有 oauth v1 属性,例如“preferred_username”而不是“unique_name”,但“ver”属性是 1.0。 enter image description here

token 类型似乎是oauth2 enter image description here

是什么原因造成的?

最佳答案

请检查您当前用于通过 Postman 发送登录请求的网址

要获取 v2.0 OAuth2 token ,您需要使用 v2.0 端点:

转至 Azure 门户 -> Azure Active Directory -> 应用注册 -> 您的应用 -> 概述 -> 端点

enter image description here

In addition to that, ensure to modify Manifest file by changing accessTokenAcceptedVersion value to 2. By default, it will be null for single tenant applications.

我尝试在我的环境中重现相同的结果并得到以下结果:

最初,我使用 v2.0 端点生成访问 token ,将 list 文件保留为默认,如下所示:

enter image description here

当我解码 token 时,我发现 OAuth2 v1.0 属性如下:

enter image description here

为了获得v2.0 token ,我更改了App's Manifest文件,如下所示:

enter image description here

我通过 Postman 生成了访问 token ,参数如下:

POST https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token

enter image description here

当我解码上述 token 时,我成功获得了 OAuth2 v2.0 属性,如下所示:

enter image description here

关于java - Oauth v2 承载 token 具有 Oauth v1 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73883050/

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