В моем тесте должно работать. И вам просто нужно настроить groupMembershipClaims
, optionalClaims
в вашей регистрации приложения API, см. причина ниже.
Вы можете сослаться на мой тестовый образец ниже, я пробовал использовать рабочий или личный аккаунт, оба работают.
Запросить код авторизации (api://3e013fde-xxxxxxa422f3/User.Test
- это мое разрешение API):
https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize?
client_id=xxxxxxxxxxxxxxx
&response_type=code
&redirect_uri=https://localhost
&response_mode=query
&scope=openid offline_access api://3e013fde-xxxxxxa422f3/User.Test
&state=12345
Запрос токена:
Расшифруйте токен в https://jwt.io/, заявка groups
Примечание:
Мои клиентское приложение и приложение API созданы сегодня Я полагаю, что между приложением, созданным в old App Registration(it is not existing in the portal currently)
, app registration portal(it has been moved to the new App Registrations)
, new App Registration(the
Регистрация приложения in portal currently)
, может быть какая-то разница.
И из этого сделать c:
Во время моего теста также произошла странная вещь когда я создаю новую регистрацию приложения API, просто установите "groupMembershipClaims": "SecurityGroup"
без установки optionalClaims
, манифест будет выглядеть следующим образом.
"groupMembershipClaims": "SecurityGroup",
"optionalClaims": {
"idToken": [],
"accessToken": [],
"saml2Token": []
}
Тогда Access token
не будет включать groups
, ID token
имеет groups
.
Если я установлю его с вашим, у Access token
будет groups
.
"groupMembershipClaims": "SecurityGroup",
"optionalClaims": {
"idToken": [],
"accessToken": [
{
"name": "groups",
"source": null,
"essential": false,
"additionalProperties": [
"dns_domain_and_sam_account_name"
]
}
],
"saml2Token": []
}
Но когда я установлю его, вернитесь к
"groupMembershipClaims": "SecurityGroup",
"optionalClaims": {
"idToken": [],
"accessToken": [],
"saml2Token": []
}
У Access token
все еще есть groups
.
С портала - Token configuration (preview)
и это сделать c - Configure group claims for applications with Azure Active Directory (Public Preview)
, функция должна быть в предварительном просмотре, это может быть ошибка (я не уверен).
Итак, в заключение, я рекомендую вам использовать два новых приложения попробовать.