当前位置: 首页 > 知识库问答 >
问题:

如何使用oauth2从microsoft获取令牌v2

穆招
2023-03-14

我正在尝试使用Web服务。我需要获取令牌并在授权标头中发送此令牌,我正在获取令牌,但在服务器中存在问题,因为令牌是v1并且他们正在使用v2。

这是我用来获取代码的网址

https://login.microsoftonline.com/tenant/oauth2/v2.0/authorize?response_type=code

这是获取令牌的url

https://login.microsoftonline.com/tenant/oauth2/v2.0/token授权标头中第一个标注的代码。

此调用返回一个令牌,但当我将令牌发送给我需要使用的ws时,我得到一个错误,当被问及错误时,他们告诉我,我发送的令牌是v1,is需要是v2。

这是我的令牌iss iss:“https://sts.windows.net/tenant/

但必须是:iss:“https://login.microsoftonline.com/tenant/v2.0

我网站上的错误是:

status=未授权, StatusCode=401承载错误="invalid_token",error_description="签名无效"

在服务器中是:

微软AspNetCore。身份验证。JwtBearer。JwtBearerHandler(信息):承载人未经过身份验证。

您是否有任何工作来获取v2令牌。

共有2个答案

松嘉运
2023-03-14

听起来您可能会获得默认令牌(在JWT标头中带有“nonce”字段),该令牌旨在供Graph API使用,并且在您自己的API中总是无法验证。

Azure AD 2.0安装程序非常混乱,但我有一篇博客文章和一些代码可以帮助您。请参阅博客文章的步骤3和步骤7,了解两种访问令牌的区别:

  • 解释Azure AD设置的博客文章
  • 验证令牌的API代码
  • API配置设置
宗政斌
2023-03-14

您需要将应用注册设置为使用v2endpoint。

可以帮助您的Microsoft文档位于此处。i、 例如,要强制AzureAD向某个自定义WebApi发布V2访问令牌,需要在其清单中将accessTokenAcceptedVersion显式设置为2.0

 类似资料:
  • 我正在从事一个需要oauth2令牌才能进行通信的项目。后端给了我一个curl命令,但我不知道如何在Unity中将其转换为WWW格式,因为我以前没有使用http或json文件的经验。你能帮我取一下代币吗?谢谢下面是curl代码的样子: $curl-v-u{CLIENT_ID}:{CLIENT_SECRET}”https://api.domo.com/oauth/token?grant_type=cl

  • 我用JHipster 5.1.0生成了一个UAA服务器。我选择PostgreSQL作为数据库类型。 它连接到我的jhipster注册表,然后我生成了一个微服务和一个网关,如下所示: 启动网关进行用户登录后,它无法获取访问令牌并引发错误: 2018-07-23 17:32:53.378调试7228---[XNIO-2 task-10]c.c.c.a.g.a.AccessControlFilter:访

  • 相关主题 我将OpenAM配置为Oauth2 Authorization Provider,并通过“OAuth 2.0/OpenID Connect Client”在同一实例上设置了一个OAuth 2 Client。作为范围,我选择“openid”和Response_type“id_token”,这样我的授权URL看起来如下:http://FQDN:PORT/OpenAMTest/oauth2/a

  • 为了能够在令牌过期后访问该用户的数据,我还需要存储刷新令牌。我知道如何在使用服务器端Google OAuth2库(指定access_type=offline)时做到这一点,但我需要能够使用客户端Javascript库来做到这一点,但它不起作用。

  • 我们希望使用SpringOAuth2JWT令牌支持。我们的架构如下:Spring只提供了一个REST接口,前端由AngularJS构建,AngularJS查询Spring REST接口。出于授权目的,我们的前端团队希望使用JWT。因此,我查看了SpringOAuth2JWT支持,但仍然不知道如何与前端讨论JWT令牌。在阅读了一些教程后,我实现了以下内容: 我不确定工作流程如何。我猜:前端访问/oa

  • 下面是security.xml文件,我正在使用它合并spring-security-oauth2。 我必须在spring-security.xml文件中做哪些更改,以便在JSON中发送查询参数?