Azure OAuth 令牌交换问题

问题描述 投票:0回答:1

我正在尝试用代码交换访问令牌,但它的格式很奇怪。 我期待一个 JWT 令牌,但我得到的是这样的东西:

发布-

https://login.microsoftonline.com/common/oauth2/v2.0/token
client_id=?
scope=User.Read
code=?
grant_type=authorization_code
client_secret=?
redirect_uri=?

{
    "token_type": "Bearer",
    "scope": "User.Read",
    "expires_in": 3600,
    "ext_expires_in": 3600,
    "access_token": "EwB4A8l6BAAUbDba3x2OMJElkF7gJ4z/VbCPEz0AAWFHRrdsZ4LrR7xaC4YHcQKYbIVUr9iZ7QotvAC57guruw+WSbgzggrIvcrGZfZumyqk7QbveeY6Ai/QJDTWIyEGp0xCEKVoNfZCgfviQATXr0gK+sdE1qRS5lWPLFApP6/CeVxF6m9TsIOxfghTKAeIZ7u8geUojjt4qKb+0jvaLiimCYQCYckzcNPhDjd5F2hdY/MCfMO1lbO7ovee2YQSAEKf5EBrySmMImLnos5Umz6UB1V4lO0uAbL7nKsRy3QX/U2LTcaXyTjVsOTBzLuZfAT0RKimKXoxjtJ8DcW7cI3FYGR6l8fjMQXKLkwBOauiRniv6/y2zJfrVvi3bUYQZgAAEJDr3QYnJrUsVhKwjjwFHBJAAoqUpBk/JK10NX+xlsZiLheYRMA8FICnJ02i5UIANZwMjfzyLWBlSID5HNNCK60gkjsHkQ01Pmqru1a/oSTNeyAdqjOYhTvVUhKmAWDwEaDhLOk03nbrAqoQO0eojLxPw3HiXQodCCo2m68ha7lFbcZqWCOuEXJulEgpp1iBjFLgL9xjLSn9TGu2QnYHoUqoKK1daHOaPcGRet2deotr4OGfh/eY6S/n/JNBIyxGei/LnuH3...
azure authentication oauth
1个回答
0
投票

请注意,当您使用个人 Microsoft 帐户(Outlook)登录获取授权码时,您将获得此类令牌。

最初,我在浏览器中运行以下授权请求,并在使用 个人 Microsoft (Outlook) 帐户登录时收到此同意屏幕:

https://login.microsoftonline.com/common/oauth2/v2.0/authorize?  
client_id=appId
&response_type=code  
&redirect_uri=https://jwt.ms
&response_mode=query  
&scope= User.Read
&state=12345

enter image description here

授予同意后,我在地址栏中得到了

code
值,如下所示:

enter image description here

当我通过 Postman 使用上述

code
值生成令牌时,我得到的令牌不会采用 JWT 形式,如下所示:

POST https://login.microsoftonline.com/common/oauth2/v2.0/token
grant_type:authorization_code
client_id:appId
client_secret:secret
scope: User.Read
code:code_from_above_request
redirect_uri: https://jwt.ms

回复:

enter image description here

这是使用个人 Microsoft 帐户登录时令牌的“默认”格式,您无法验证它们。相反,您可以使用该令牌根据其拥有的范围权限来调用 MS Graph API: GET https://graph.microsoft.com/v1.0/me

回复:

enter image description here 要获取 JWT 格式的令牌,您需要在运行授权请求时使用以

.onmicrosoft.com

结尾的组织帐户(本地租户用户)进行签名。

enter image description here

代码:

enter image description here

JWT 代币:

enter image description here

参考:

为什么我的有效MS access_token无法用jwt.ms解析? - Stack Overflow 作者:

Carl Zhu

© www.soinside.com 2019 - 2024. All rights reserved.