You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Entra ID访问令牌添加employeeId自定义属性?

解决方案:为Azure AD OAuth2令牌添加employeeId属性

你当前的问题核心是配置错了令牌类型:你在「单一登录」>「属性和声明」里设置的是SAML令牌的自定义声明,但实际使用的是OAuth2的密码授权(ROPC)流,生成的是JWT格式的ID/访问令牌,两者配置不互通。

正确配置步骤

  1. 进入Azure Active Directory -> 应用注册 -> 找到你正在使用的客户端应用
  2. 切换到令牌配置选项卡
  3. 点击添加可选声明:
    • 选择令牌类型(ID令牌或访问令牌,根据你的业务需求选择)
    • 在可选声明列表中找到employeeId并勾选,点击添加
    • 如果列表中没有该声明,点击添加自定义声明,配置:
      • 名称:employeeId
      • 源:属性
      • 源属性:employeeId
      • 选择对应的令牌类型,保存配置
  4. 重新调用https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token端点获取令牌,用jwt.ms解析查看是否包含employeeId字段

注意事项

  • 确保用户的employeeId属性在Azure AD中已填充有效值
  • 密码授权(ROPC)流属于v2.0端点的支持范围,但部分敏感属性可能需要额外的权限配置,若遇到权限问题,需在应用注册中添加对应的Graph API权限并授予管理员同意

替代方案

如果上述配置仍无法生效,可在获取令牌后,调用Microsoft Graph的用户信息接口获取employeeId:

GET https://graph.microsoft.com/v1.0/me?$select=employeeId
Authorization: Bearer {access_token}

将返回的employeeId整合到你的业务逻辑中即可。

内容的提问来源于stack exchange,提问作者Enrico Arnaudo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 11:12:46