Можно ли наследовать роли хранилища BLOB-объектов RBAC от групп безопасности Azure AD? - PullRequest
0 голосов
/ 13 мая 2019

У меня проблемы с аутентификацией с использованием хранилища BLOB-объектов Azure, мы используем ADAL в приложении Angular для подключения к хранилищу BLOB-объектов Azure.

Я настроил олицетворение регистрации приложений Azure в хранилище и могу получить для пользователя токен для ресурса https://storage.azure.com/.

Для учетной записи хранения настроены элементы управления доступом для Storage Blob Data Contributor для пользователей, теперь я начинаю испытывать проблемы.

Если я назначу пользователя напрямую на Storage Blob Data Contributor - все будет работать как положено, и мы сможем запрашивать и загружать BLOB-объекты.

Однако, если мы назначим Storage Blob Data Contributor группе безопасности AD, члены указанной группы AD не смогут получить доступ к хранилищу и получат 403 ошибки с заголовком x-ms-error-code: AuthorizationPermissionMismatch.

Существуют ли какие-либо ограничения на назначение разрешений через группы? Нужна ли нам Premium AD? Любая помощь будет высоко ценится.

Обновление

Подтверждено, что проблема не возникла с Premium AD, поскольку она все еще не работает после попытки аренды с P2.

документация здесь состояния;

Когда роль RBAC назначается субъекту безопасности Azure AD, Azure предоставляет доступ к этим ресурсам для этого субъекта безопасности. Доступ может быть ограничен до уровня подписки, группы ресурсов, учетной записи хранения или отдельного контейнера или очереди. Участник безопасности Azure AD может быть пользователем, группой, субъектом службы приложений или управляемым удостоверением для ресурсов Azure.

Конечно, это означает, что вы можете назначать роли как на человека, так и наследовать от группы ???

Полный контекст;

  1. Регистрация приложения настроена с Azure Storage -> user_impersonation App configuration
  2. У пользователя есть роль Storage Blob Data Contributor, назначенная через GROUP ASSIGNMENT User Role Assignment v1
  3. Angular App может авторизоваться против https://storage.azure.com/ и получить токен JWT Token
  4. 403 ошибка запроса PUT с кодом ошибки AuthorizationPermissionMismatch HTTP PUT Error
  5. Обновление назначений ролей для включения прямого назначения User Role Assignment v2
  6. Получить новый токен ...
  7. PUT теперь работает и изображение успешно сохраняется Successfuly PUT

Теперь это работает - доказано, что группы - причина. Почему групповые назначения не дают пользователям доступ?

Опять была бы признательна за любую помощь!

Обновление 2

Как указано в ответе ниже;

Параметр «Проверить доступ» на блейде «IAM Access» показывает, что у меня есть назначение роли Storage Blob Data Contributor из трех групп (QA - техник, QA - администратор сайта без данных клиента и QA - администратор сайта с данными клиента )

IAM Access - Check Access

Я не менял этих пользователей, связанных с ролями, так как они были созданы несколько месяцев назад, и, как показано на рисунке выше, я должен быть участником роли, которая будет включена сюда.

Группа не назначается динамически, все пользователи назначаются на роли в разделе «Членство». Имеет ли значение, что это через другую группу? т.е.

Development Group in QA - Site Admin w/o customer data group

Development Group members

1 Ответ

0 голосов
/ 30 мая 2019

Не могли бы вы использовать опцию «Проверить доступ» из блейда «IAM Access» в уязвимой учетной записи хранения на портале Azure и посмотреть, показывает ли пользователь, являющийся частью группы, назначение роли через наследование? Также я бы попросил вас проверить, входит ли пользователь в группу в тот момент, когда мы попытались получить доступ. Имеет ли группа динамическое членство пользователя?

учетная запись хранения> IAM> Добавьте роль и добавьте специальное разрешение для этого типа запроса, РАЗДЕЛИТЕЛЬ ДАННЫХ ХРАНИЛИЩА BLOB. Я рекомендую вам ознакомиться с этими статьями

На данный момент вы можете протестировать доступ на основе идентификации с помощью PowerShell https://docs.microsoft.com/en-us/azure/storage/common/storage-auth-aad-rbac-powershell

Дайте мне знать статус

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