在Azure AD B2C中找到用户时,我正在使用以下自定义api获取access_token:
https://patient360app.b2clogin.com/patient360app.onmicrosoft.com/oauth2/v2.0/token?p=B2C_1_ROPC_Auth
它向我返回以下响应:
如何通过上述响应获取用户的对象ID?
答案 0 :(得分:0)
身份验证响应的id_token
属性设置为已编码的JSON Web令牌(JWT)。
您应该使用https://jwt.io/中列出的JWT库之一来验证此ID令牌,然后才能从已验证的令牌中读取oid
(对象标识符)声明。
答案 1 :(得分:0)
解决这个问题的方法是在我的api控制器中执行以下操作:
User.Claims.First(e => e.Type == "http://schemas.microsoft.com/identity/claims/objectidentifier").Value;
这为我提供了api调用提供的令牌中的用户ID。