Azure AD问题声明安全组名称

Mik*_*nov 4 claims-based-identity azure-active-directory

我需要Azure AD才能发出具有安全组名称的声明。但是JWT令牌中只有组对象ID

如何获取安全组名称

到目前为止,我做了什么:1.创建一个测试安全组,并为其分配用户。这是该用户的唯一组。

  1. 将此groupMembershipClaims设置为All(整数7),就像在此官方文档中一样:https: //docs.microsoft.com/zh-cn/azure/active-directory/develop/reference-app-manifest

  2. 这是应用程序清单的相关部分: { ... "appRoles": [], "availableToOtherTenants": false, "displayName": "Azure AD B2C sandbox App ", "errorUrl": null, "groupMembershipClaims": "All", "optionalClaims": null, "acceptMappedClaims": null,...

juu*_*nas 6

您无法使用令牌获得它们。如您所见,您仅获得ID。通常这很好,因为ID不能更改,而ID可以更改。

如果要基于组进行授权,则可以在配置文件中设置ID,然后检查ID。

如果您想为其他目的使用名称,则需要从Microsoft Graph API查询组。您可以在以下位置找到API文档:https : //developer.microsoft.com/zh-cn/graph/docs/api-reference/v1.0/resources/groups-overview

  • 听起来您希望客户的管理员能够设置角色?您应该考虑将用户角色添加到您的应用程序:https://joonasw.net/view/defining-permissions-and-roles-in-aad。然后可以由租户管理员分配这些,您将知道令牌中的值是什么。 (2认同)