在Azure AD中将on_premise_sam_account属性添加到JWT声明

3

我一直在尝试在我的 ID Token 中返回 onpremisessamaccountname,但似乎不能正确地使用语法。已经尝试了以下方法:

"optionalClaims": {
    "idToken": [
        {
            "name": "onprem_sam_account_name",
            "source": "user",
            "essential": true,
            "additionalProperties": []
        }
    ],

"optionalClaims": {
    "idToken": [
        {
            "name": "onprem_sam_account_name",
            "source": "user.onpremsamaccountname",
            "essential": true,
            "additionalProperties": []      }
    ],

    "optionalClaims": {
    "idToken": [
        {
            "name": "onprem_sam_account_name",
            "source": "user.onprem_sam_account_name",
            "essential": true,
            "additionalProperties": []      }
    ],
2个回答

1

我看过这个,但我已经能够从列表中添加其他属性。该网站说明:受限声明集不能使用策略进行修改。数据源无法更改,并且在生成这些声明时不应用任何转换。我相信我是在规则范围内的。 - Justin Cox
1
@JustinCox 你能解决这个问题吗?我知道如何通过 Powershell 修改 AzureAD 策略并在 ID Token 中获取 samAccountName,但不知道如何在 Access Token 中获取。这就是我正在寻找的... - rubberchicken

1

https://learn.microsoft.com/en-us/azure/active-directory/develop/active-directory-jwt-claims-customization

完整详情请查看上面的链接。简而言之,声明需要添加到企业应用程序中。一旦完成,当用户登录时,新的声明将随着ID令牌一起发送到应用程序

要编辑声明,请通过企业应用程序体验在Azure门户中打开应用程序。然后在左侧菜单中选择单一登录选项卡,并打开“属性和声明”部分。

编辑:您也需要在应用程序清单中设置"acceptMappedClaims": true,

Manage claim

Claims


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接