Сбой Azure AD, включающий groupMemberClaims в манифест приложения - PullRequest
0 голосов
/ 26 сентября 2018

Я прочитал несколько блогов, в том числе:

https://www.codeproject.com/Articles/1254806/Authentication-and-Authorization-in-ASP-NET-Core-2

Я создаю приложения, использующие OpenIdConnect, с использованием активного каталога Azure.Я хочу ограничить доступ к каждому приложению только для пользователей в определенных группах.Например, к приложению 1 могут обращаться только пользователи из группы 1, а к приложению 2 - только пользователи из группы 2.

Итак, когда пользователь любого из приложений входит в систему с помощью Azure AD, я хочу Azure ADвернуть претензии группы для авторизованного пользователя.Основываясь на группах, я решаю (со стороны приложения), разрешен ли пользователю доступ к приложению или нет.Мне удалось выяснить, как вернуть группы ...

НО

Когда я включаю groupMemberClaims в манифест приложения, я получаю ошибку Bad Request ..., что является результатом слишком большого количества заголовков, добавленных к запросу, поскольку некоторые пользователи принадлежат к стольким группам безопасности.Это моя дилемма.

Кто-нибудь сталкивался с этой проблемой раньше и как вы ее исправили?

1 Ответ

0 голосов
/ 26 сентября 2018

Вместо того чтобы полагаться на группы, вы можете определять роли для пользователей в манифесте приложения.Затем вы можете назначить эти роли пользователям.Если у вас есть платная лицензия для Azure AD (я забыл, какой уровень), вы также можете назначать роли пользователей группам.

Вот пример роли пользователя в манифесте приложения:

{
  "appRoles": [
    {
      "allowedMemberTypes": [
        "User"
      ],
      "displayName": "Administrator",
      "id": "179c1dc0-4801-46f3-bc0d-35f059da1415",
      "isEnabled": true,
      "description": "Administrators can access advanced features.",
      "value": "admin"
    }
  ]
}

value - это то, что дается вашему приложению в токене.После определения роли (й) нажмите «Управляемое приложение в локальном каталоге» (который является субъектом службы).Там вы можете найти пользователей и группы и назначить роли пользователям (и группам).

Моя статья на тему ролей и пользовательских разрешений: https://joonasw.net/view/defining-permissions-and-roles-in-aad

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...