【问题标题】:How do we validate the access token from azure AD in backend?我们如何在后端验证来自 azure AD 的访问令牌?
【发布时间】:2021-12-17 17:40:04
【问题描述】:

我有一个来自 azure AD 的 accessToken。我需要在 python 中验证它们。我该怎么做?

【问题讨论】:

  • 您好,欢迎来到 Stack Overflow。这不是一站式代码商店。我们希望您付出一些努力,如果您遇到问题,我们很乐意提供帮助。就目前而言,这个问题不太适合 SO。请参考How to Ask。正题:你的问题很searchable

标签: python python-3.x azure-active-directory msal msal-angular


【解决方案1】:

其中一种变通方法是使用 PyJWT 和密码学依赖项(因为它包含二进制依赖项,所以必须针对目标操作系统创建和打包)来支持 RS256 算法。

pip install pyjwt cryptography requests
  • 需要用于对令牌进行签名的密钥对的公钥才能对其进行验证。
  • 我们还需要您在 Azure 门户中提供的应用 ID 以进行进一步验证。

然后使用 App ID 来验证令牌。

import jwt

app_id = 'd31a4d20-6c4a-1a40-b74d-1a3d461bb3d8'
access_token = 'XXXX'
token_header = jwt.get_unverified_header(access_token)

更多信息可以参考

参考:

  1. AAD OAuth2 JWT Token Validation with Python
  2. How to verify JWT id_token produced by MS Azure AD?

【讨论】:

  • 如果我的答案对您有用,您可以接受它作为答案(单击答案旁边的复选标记,将其从灰色切换为填写)。这对其他社区成员可能是有益的。谢谢
猜你喜欢
  • 2020-07-25
  • 2020-01-12
  • 2021-12-13
  • 2020-07-12
  • 1970-01-01
  • 2016-12-02
  • 2022-01-17
  • 2017-02-13
  • 1970-01-01
相关资源
最近更新 更多