根据Azure AD documentation,当使用访问令牌发出ID令牌时,Azure AD v2.0 ID令牌应包含访问令牌哈希,protected override void Dispose(bool disposing)
{
if (disposing && _userManager != null)
{
_userManager.Dispose();
_userManager = null;
}
base.Dispose(disposing);
}
声明。
但似乎ID令牌中缺少ManageController
声明。在调用Azure AD访问令牌请求v2.0端点AccountController
之后,尽管发出了访问令牌,但Azure返回的id_token不包含at_hash
声明。
Azure AD v2.0返回的响应正文示例:
at_hash
id_token包含以下声明。它不包含https://login.microsoftonline.com/{my_tenant}/oauth2/v2.0/token
声明。
at_hash
答案 0 :(得分:0)
根据上述请求,您使用的是授权代码流。看来这个说法不是由这个流程发布的。但是,当请求使用下面的请求隐式流时,会发出此声明:
POST: https://login.microsoftonline.com/{tenant}/oauth2/v2.0/authorize?
response_type=token+id_token
&client_id={client_id}
&redirect_uri={redirect_uri}
&scope=openid+mail.read
&state=123
&nonce=456