如何将本地用户属性onpremisessamaccountname添加到JWT令牌声明中?
将onpremisessamaccountname添加到Microsoft Entra ID JWT访问令牌的方法
方法一:编辑应用程序清单配置自定义声明
- 登录Microsoft Entra ID,进入你的应用注册页面,点击左侧菜单的「清单」选项。
- 在清单文件中找到
optionalClaims字段(若不存在则手动添加),插入以下配置:
"optionalClaims": { "accessToken": [ { "name": "onpremisessamaccountname", "source": "user", "essential": false, "additionalProperties": [] } ] }
- 保存清单后,重新生成访问令牌,检查是否包含目标属性。
方法二:确认用户属性同步与有效性
- 确保当前租户中,用户的
onpremisessamaccountname属性已通过Azure AD Connect完成同步,且在用户详情页面能看到非空的属性值。空属性不会被写入令牌。
注意事项
- 只有涉及用户上下文的令牌生成流程(如授权码流、密码流)才会包含用户属性,客户端凭据流无用户上下文,不会返回此类声明。
- 若清单编辑后仍未生效,可尝试重新授权应用或等待Entra ID配置同步(通常数分钟内完成)。
内容的提问来源于stack exchange,提问作者FolabiAhn
相关产品推荐
相关产品推荐

