Cri*_*rsi 5 azure access-token azure-active-directory microsoft-identity-platform personal-access-token
我的租户上有一个 Azure AD 应用程序,该应用程序配置为接受多个租户和个人帐户。
我按照此处说明的过程检索 AccessToken: https: //learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow
当我从 Microsoft 网页收到应用程序中的“代码”时,我将其交换为调用端点“https://login.microsoftonline.com/common/oauth2/v2.0/token”的访问令牌。
无论登录的用户是工作帐户还是个人帐户,此处的行为都会有所不同。
通过工作帐户,我收到一个普通的 JWT 令牌,每个人都很高兴:我可以解码令牌并读取声明。
使用个人帐户,我收到另一个令牌,它不是 JWT 令牌,我不知道如何:
您能帮我了解如何执行这两个操作吗?
注意:我在这里看到了答案:Microsoft 作为个人帐户的 OAuth2 提供商不会颁发 JWT 访问令牌,但我的情况略有不同,因为我不想使用此令牌访问 MS Graph,我只需要检索电子邮件用户的。
谢谢!
盖尔西
根据 OAuth 规范, OAuth2access_token中的 不需要是 JWT。
不过,Microsoft 支持OpenID Connect,它提供了id_token. 始终是id_tokenJWT。
要将您的 OAuth 请求“升级”为 OpenID Connect 请求,您只需添加范围openid(并可能email确保您收到电子邮件)。
然后当你把你的换成codeanaccess_token你也会得到一个id_token
| 归档时间: |
|
| 查看次数: |
1305 次 |
| 最近记录: |