我正在从 azure 的令牌端点获取客户端凭据令牌 - https://login.microsoftonline.com/
此后,我将令牌中的“孩子”与https://login.microsoftonline.com/
并使用 x5c 中的值作为证书来验证令牌,但它给出的错误为
com.auth0.jwt.exceptions.SignatureVerificationException: The Token's Signature resulted invalid when verified using the Algorithm: SHA256withRSA
我使用“https://graph.microsoft.com/.default”作为获取令牌的范围,但仍然无法工作 Azure AD 令牌签名验证无效。使用算法验证时,令牌的签名无效:SHA256withRSA
注意:您无法将包含 aud 的访问令牌验证为 Microsoft Graph,即
或https://graph.microsoft.com
。00000003-0000-0000-c000-000000000000
最初,我通过将 scope 传递为
https://graph.microsoft.com/.default
来生成访问令牌
https://login.microsoftonline.com/TenantID/oauth2/v2.0/token
client_id : ClientID
scope : https://graph.microsoft.com/.default
client_secret : ClientSecret
grant_type : client_credentials
解码时我得到无效签名错误:
因此,您可以直接使用 Microsoft Graph API 访问令牌而无需验证它。
您可以验证应用程序的令牌,如下所示:
我公开了一个API,创建了应用程序角色并添加了API权限:
现在我通过将 scope 传递为
api//ClientID/.default
来生成令牌
签名验证成功: