Авторизация доступа к Хранилище BLOB-объектов Azure с помощью условий назначения ролей Azure
Управление доступом на основе атрибутов (ABAC) — это стратегия авторизации, которая определяет уровни доступа на основе атрибутов, связанных с субъектами безопасности, ресурсами, средой и самими запросами. С помощью ABAC вы можете предоставить субъекту безопасности доступ к ресурсу на основе условия, выраженного в качестве предиката, с использованием этих атрибутов.
Система Azure ABAC основана на управлении доступом на основе ролей Azure (Azure RBAC). Она позволяет добавлять условия для назначения ролей Azure. Он позволяет создавать условия назначения ролей на основе атрибутов субъекта, ресурса, запроса и среды.
Внимание
Управление доступом на основе атрибутов Azure (Azure ABAC) общедоступен для управления доступом к Хранилище BLOB-объектов Azure, Azure Data Lake Storage 2-го поколения и очередям Azure с помощью request
, resource
environment
а principal
также атрибутов в уровнях производительности учетной записи хранения уровня "Стандартный" и "Премиум". В настоящее время атрибут ресурса метаданных контейнера и большой двоичный объект списка включают атрибут запроса в предварительной версии. Полные сведения о состоянии функции ABAC для служба хранилища Azure см. в разделе "Состояние функций условий" в служба хранилища Azure.
Юридические условия, применимые к функциям Azure, которые находятся в состоянии бета-версии, предварительной версии или иным образом еще не выпущены в общедоступной версии, см. на странице Дополнительные условия использования предварительных версий в Microsoft Azure.
Обзор условий в службе хранилища Azure
С помощью идентификатора Microsoft Entra (Microsoft Entra ID) можно авторизовать запросы к ресурсам службы хранилища Azure с помощью Azure RBAC. Azure RBAC помогает управлять доступом к ресурсам, определяя, кто имеет доступ к ресурсам и какие действия они могут выполнять с этими ресурсами, с использованием определений ролей и назначений ролей. Служба хранилища Azure определяет набор встроенных ролей Azure, охватывающих общие наборы разрешений, используемых для доступа к данным в службе хранилища Azure. Можно также определить настраиваемые роли с выбранными наборами разрешений. Служба хранилища Azure поддерживает назначение ролей для учетных записей хранения и контейнеров больших двоичных объектов.
В основе Azure ABAC лежит механизм Azure RBAC, к которому добавляются условия назначения ролей в контексте определенных действий. Условие назначения роли — это дополнительная проверка, которая выполняется при авторизации действия с ресурсом хранилища. Это условие выражается в виде предиката с использованием атрибутов, связанных с одним из следующих объектов:
- Субъект безопасности, запрашивающий авторизацию
- Ресурс, доступ к которому запрашивается
- Параметры запроса
- Среда, в которой выполняется запрос
Условия назначения ролей имеют следующие преимущества:
- Более детальный контроль доступа к ресурсам. Например, если вы хотите предоставить пользователю доступ к BLOB-объектам в учетных записях хранения только в том случае, если они помечены как Project=Sierra, вы можете использовать условия для действия чтения, используя теги в качестве атрибута.
- Сокращение количества назначений ролей, которые необходимо создавать и администрировать. Для этого можно использовать обобщенное назначение ролей для группы безопасности, а затем ограничивать доступ для отдельных участников группы с использованием условия, которое соответствует атрибутам субъекта, с атрибутами конкретного ресурса (например, BLOB-объекта или контейнера), к которому осуществляется доступ.
- Выражение правил контроля доступа в терминах атрибутов с бизнес-значением. Например, вы можете выражать условия с помощью атрибутов, представляющих имя проекта, бизнес-приложение, подразделение организации или уровень классификации.
Компромисс с условиями использования заключается в том, что вам нужна структурированная и согласованная таксономия при использовании атрибутов в организации. Атрибуты должны быть защищены, чтобы предотвратить компрометацию доступа. Кроме того, для правильной организации доступа условия должны быть тщательно продуманы и проверены.
Условия назначения ролей в службе хранилища Azure поддерживаются для Хранилища BLOB-объектов Azure. Вы также можете использовать условия с учетными записями, имеющими функцию иерархического пространства имен (HNS), включенную в них (Data Lake Storage).
Поддерживаемые атрибуты и операции
Для достижения этих целей можно настроить условия назначения ролей для действий DataActions. Условия можно использовать для настраиваемой роли или встроенных ролей. Обратите внимание, что условия не поддерживаются для действий управления через поставщика ресурсов хранилища.
Вы можете добавлять условия для встроенных и настраиваемых ролей. Встроенные роли, для которых можно использовать условия назначения ролей, включают следующие:
- читатель данных больших двоичных объектов хранилища.
- участник данных BLOB-объектов хранилища;
- владелец данных BLOB-объектов хранилища;
Условия можно использовать с настраиваемыми ролями, если роль включает действия, поддерживающие условия.
Если вы работаете с условиями на основе тегов индекса BLOB-объектов, следует использовать роль Владелец данных BLOB-объектов хранилища, так как в эту роль включены разрешения для операций с тегами.
Примечание.
Теги индекса BLOB-объектов не поддерживаются для учетных записей хранения Data Lake Storage, использующих иерархическое пространство имен. Не следует создавать условия назначения ролей на основе тегов индекса в учетных записях хранения, в которых включена функция иерархического пространства имен (HNS).
Формат условия назначения ролей Azure позволяет использовать @Resource
@Principal
@Request
атрибуты или @Environment
атрибуты в условиях. Атрибут @Principal
— это настраиваемый атрибут безопасности для субъекта, такого как пользователь, корпоративное приложение (субъект безопасности) или управляемое удостоверение. Атрибут @Resource
ссылается на атрибут ресурса службы хранилища, к которому осуществляется доступ. Это может быть учетная запись хранения, контейнер или большой двоичный объект. Атрибут @Request
ссылается на атрибут или параметр, входящий в запрос операции службы хранилища. Атрибут @Environment
ссылается на сетевую среду или дату и время запроса.
Azure RBAC поддерживает ограниченное количество назначений ролей для каждой подписки. Если вам нужно создать тысячи назначений ролей Azure, это ограничение может возникнуть. Управление сотнями или тысячами заданий ролей может быть непростой задачей. В некоторых случаях с помощью условий можно уменьшить количество назначений ролей в учетной записи хранения и упростить управление ими. Вы можете масштабировать управление назначениями ролей с помощью условий и настраиваемых атрибутов безопасности Microsoft Entra для субъектов.
Состояние функций условий в служба хранилища Azure
Управление доступом на основе атрибутов Azure (Azure ABAC) общедоступен для управления доступом к Хранилище BLOB-объектов Azure, Azure Data Lake Storage и очередям Azure с помощью request
, resource
environment
а также principal
атрибутов в уровнях производительности учетной записи хранения уровня "Стандартный" и "Премиум". В настоящее время атрибут ресурса метаданных контейнера и большой двоичный объект списка включают атрибут запроса в предварительной версии.
В следующей таблице показан текущий статус ABAC по типу ресурса хранилища и типу атрибута. Также отображаются исключения для определенных атрибутов.
Типы ресурсов | Типы атрибутов | Атрибуты | Availability |
---|---|---|---|
BLOB-объекты Data Lake Storage Очереди |
Запросить Ресурс Среда Субъект |
Все атрибуты, кроме указанных в этой таблице | Общедоступная версия |
Data Lake Storage | Ресурс | Моментальный снимок | Предварительный просмотр |
BLOB-объекты Data Lake Storage |
Ресурс | Метаданные контейнера | Предварительный просмотр |
BLOB-объекты | Запросить | Список больших двоичных объектов: | Предварительный просмотр |
Юридические условия, применимые к функциям Azure, которые находятся в состоянии бета-версии, предварительной версии или иным образом еще не выпущены в общедоступной версии, см. на странице Дополнительные условия использования предварительных версий в Microsoft Azure.
Примечание.
Некоторые функции хранения не поддерживаются для учетных записей хранения Data Lake Storage, которые используют иерархическое пространство имен (HNS). Дополнительные сведения см. в статье о поддержке функций хранилища BLOB-объектов.
Следующие атрибуты ABAC не поддерживаются, если иерархическое пространство имен включено для учетной записи хранения:
Следующие шаги
- Предварительные требования для условий назначения ролей Azure
- Руководство: добавление условия назначения роли для ограничения доступа к BLOB-объектам с помощью портала Azure
- Действия и атрибуты условий назначения роли Azure в службе хранилища Azure
- Примеры условий назначения роли Azure
- Устранение неполадок с условиями назначения роли Azure
См. также
- Что такое управление доступом на основе атрибутов Azure (Azure ABAC)?
- Вопросы и ответы об условиях назначения ролей Azure
- Формат и синтаксис условия назначения роли Azure
- Масштабирование управления назначениями ролей Azure с помощью условий и настраиваемых атрибутов безопасности
- Вопросы безопасности, связанные с условиями назначения ролей Azure в службе хранилища Azure