如何向 ID 令牌添加额外声明 - Azure 政府门户

How to add additional claims to ID Token - Azure Government Portal

我试图通过添加额外的声明来超载 OAuth ID 令牌。我已经可以使用 Graph API 来获取我需要的声明,但我想了解是否可以将其他声明直接添加到 ID 令牌中?我已经通过添加所需的声明然后将 "acceptMappedClaims" 翻转为 true 来更新清单,但是我仍然没有在 ID 令牌中看到这些。我错过了什么?

"optionalClaims": {
    "idToken": [
      {
        "name": "employeeid",
        "source": "user",
        "essential": true,
        "additionalProperties": []
      },
      {
        "name": "mail",
        "source": "user",
        "essential": true,
        "additionalProperties": []
      }
    ],
    "accessToken": [],
    "saml2Token": []
  },
  "acceptMappedClaims": true,

如果您尝试将其他声明添加到您的 AD 令牌中,您将需要 Azure AD premium,并且您可以将值添加为属性。参见

如果您只需要一个特定应用程序中的声明,您可以在应用程序本身中添加声明。参见 Azure AD PostAuthentication add claims

这取决于生成 ID 令牌的位置。如果它是 on-premises AD 并且使用联合身份,请查看 Customizing the OIDC id_token in ADFS 2016

如果它只是一个云身份,我会看看第二个 link jwmiller5 发布的或这个:how-to-set-claims-from-asp-net-openid-connect-owin-components.

希望这对您有所帮助, 伯尼