Поделиться через


Авторизация доступа к данным в службе хранилища Azure

Каждый раз, когда вы обращаетесь к данным в учетной записи хранения, клиентское приложение выполняет запрос по протоколу HTTP/HTTPS в службу хранилища Azure. По умолчанию каждый ресурс в службе хранилища Azure защищен, и каждый запрос к защищенному ресурсу должен быть авторизован. Авторизация гарантирует, что клиентское приложение имеет соответствующие разрешения для доступа к определенному ресурсу в учетной записи хранения.

Это важно

Для оптимальной безопасности корпорация Майкрософт рекомендует использовать Microsoft Entra ID с управляемыми удостоверениями для авторизации запросов к данным в blob-объектах, очередях и таблицах, когда это возможно. Авторизация с помощью идентификатора Microsoft Entra и управляемых удостоверений обеспечивает более высокую безопасность и удобство использования при авторизации общего ключа. Дополнительные сведения об управляемых удостоверениях см. в статье "Что такое управляемые удостоверения для ресурсов Azure". Пример включения и использования управляемого удостоверения для приложения .NET см. в статье Аутентификация размещенных в Azure приложений в ресурсах Azure с помощью .NET.

Для ресурсов, размещенных за пределами Azure, таких как локальные приложения, можно использовать управляемые удостоверения с помощью Azure Arc. Например, приложения, работающие на серверах с поддержкой Azure Arc, могут использовать управляемые удостоверения для подключения к службам Azure. Дополнительные сведения см. в статье "Проверка подлинности в ресурсах Azure с помощью серверов с поддержкой Azure Arc".

В сценариях, где используются совместные ключи доступа (SAS), корпорация Майкрософт рекомендует использовать пользовательские делегированные SAS. SAS делегирования пользователей защищены учетными данными Microsoft Entra вместо ключа учетной записи. Дополнительные сведения о подписанных URL-адресах см. в статье Предоставление ограниченного доступа к данным с помощью подписанных URL-адресов. Для примера создания и использования SAS делегирования пользователей с .NET см. статью "Создание SAS делегирования пользователей для blob с помощью .NET".

Авторизация для операций с данными

В следующем разделе описана поддержка авторизации и рекомендации для каждой службы хранилища Azure.

В следующей таблице приведены сведения о параметрах авторизации, поддерживаемых для объектов BLOB.

Параметр авторизации Руководство Рекомендация
Майкрософт Ентра айди Авторизация доступа к данным службы хранилища Azure с помощью идентификатора Microsoft Entra Корпорация Майкрософт рекомендует использовать Microsoft Entra ID с управляемыми удостоверениями для авторизации запросов к объектам blob.
Общий ключ (ключ учетной записи хранения) Авторизация с помощью общего ключа Корпорация Майкрософт рекомендует запретить авторизацию общего ключа для учетных записей хранения.
Подпись общего доступа (SAS) Использование общих ключей доступа (SAS) При необходимости авторизации SAS Microsoft рекомендует использовать делегирование пользователей SAS для ограниченного делегированного доступа к объектам BLOB. Авторизация SAS поддерживается для хранилища Blob Storage и Data Lake Storage и может использоваться для вызовов конечных точек blob и dfs.
Анонимный доступ на чтение Обзор: Устранение анонимного доступа на чтение для BLOB-данных Корпорация Майкрософт рекомендует отключить анонимный доступ для всех учетных записей хранения.
Локальные пользователи хранилища Поддерживается только для SFTP. Дополнительные сведения см. в статье "Авторизация доступа к хранилищу BLOB-объектов" для клиента SFTP Дополнительные сведения см. в руководстве по параметрам.
Политики защиты Microsoft Purview Поддерживается для хранилища блоб-объектов Azure и хранилища данных Azure Data Lake. Дополнительные сведения см. в статье "Создание и публикация политик защиты для источников Azure (предварительная версия)". Дополнительные сведения см. в руководстве по параметрам.

В следующем разделе кратко описаны параметры авторизации для службы хранилища Azure.

  • Авторизация общего ключа: применяется к blob-объектам, файлам, очередям и таблицам. Клиент, использующий общий ключ, передает заголовок с каждым запросом, подписанным с помощью ключа доступа к учетной записи хранения. Дополнительные сведения см. в статье Авторизация с помощью общего ключа.

    Ключ доступа к учетной записи хранения следует использовать с осторожностью. Любой пользователь, имеющий ключ доступа, может авторизовать запросы к учетной записи хранения и эффективно иметь доступ ко всем данным. Корпорация Майкрософт рекомендует запретить авторизацию общего ключа для учетной записи хранения. Если авторизация с использованием Общего ключа запрещена, клиенты должны использовать идентификатор Microsoft Entra или SAS делегирования пользователей для авторизации запросов данных в этой учетной записи хранения. Дополнительные сведения см. в статье Предотвращение авторизации с общим ключом для учетной записи службы хранения Azure.

  • Подписи общего доступа для блобов, файлов, очередей и таблиц. Подписанные URL-адреса (SAS) предоставляют ограниченный делегированный доступ к ресурсам в учетной записи хранения с помощью подписанного URL-адреса. Подписанный URL-адрес указывает разрешения, предоставленные ресурсу, и интервал, для которого действительна подпись. SAS службы или SAS учетной записи подписываются ключом учетной записи, в то время как SAS делегирования пользователей подписываются учетными данными Microsoft Entra и применяются только к блобам. Дополнительные сведения см. в статье Об использовании подписанных URL-адресов (SAS).

  • Интеграция Microsoft Entra: применяется к ресурсам больших двоичных объектов, очередей и таблиц. Корпорация Майкрософт рекомендует использовать учетные данные Microsoft Entra с управляемыми удостоверениями для авторизации запросов к данным, когда это возможно для оптимальной безопасности и удобства использования. Дополнительные сведения об интеграции с Microsoft Entra см. в статьях о больших двоичных объектах, очередях или таблицах .

    Управление доступом на основе ролей Azure (Azure RBAC) можно использовать для управления разрешениями субъекта безопасности для больших двоичных объектов, очередей и таблиц в учетной записи хранения. Вы также можете использовать управление доступом на основе атрибутов Azure (ABAC) для добавления условий в назначения ролей Azure для ресурсов BLOB-объектов.

    Дополнительные сведения о RBAC см. в статье "Что такое управление доступом на основе ролей Azure(Azure RBAC)?".

    Дополнительные сведения об ABAC см. в статье "Что такое управление доступом на основе атрибутов Azure(Azure ABAC)?". Сведения о состоянии функций ABAC см. в разделе "Состояние условий ABAC" в службе хранилища Azure.

  • Проверка подлинности доменных служб Microsoft Entra: применяется к файлам Azure. Файлы Azure поддерживают авторизацию на основе учетных данных через SMB с использованием доменных служб Microsoft Entra. Azure RBAC можно использовать для детального контроля доступа клиента к ресурсам службы "Файлы Azure" в учетной записи хранения. Дополнительные сведения о проверке подлинности файлов Azure с помощью доменных служб см. в разделе "Общие сведения о параметрах проверки подлинности на основе удостоверений Azure" для доступа К SMB.

  • Локальная аутентификация с использованием доменных служб Active Directory (AD DS, или локальные AD DS): применяется к файлам Azure. Azure Files поддерживают авторизацию на основе удостоверений по SMB с использованием AD DS. Среда AD DS может размещаться на локальных компьютерах или в виртуальных машинах Azure. Доступ SMB к файлам поддерживается с помощью учетных данных AD DS с присоединенных к домену компьютеров, локальных или в Azure. Вы можете использовать сочетание Azure RBAC для управления доступом на уровне общего ресурса и DACLs NTFS для принудительного применения разрешений на уровне каталога или файла. Дополнительные сведения о проверке подлинности файлов Azure с помощью доменных служб см. в обзоре.

  • Анонимный доступ на чтение: применяется к ресурсам объектов Blob. Этот параметр использовать не рекомендуется. При настройке анонимного доступа клиенты могут считывать данные BLOB-объектов без авторизации. Рекомендуется отключить анонимный доступ для всех учетных записей хранения. Дополнительные сведения см. в статье "Обзор: устранение анонимного доступа на чтение для данных BLOB-объектов".

  • Локальные пользователи хранилища: применяется к BLOB-объектам с SFTP или файлами с SMB. Локальные пользователи хранилища поддерживают разрешения уровня контейнера для авторизации. Дополнительные сведения о том, как локальные пользователи хранилища можно использовать с SFTP с помощью протокола SFTP .

  • Интеграция Microsoft Purview Information Protection: применяется к хранилищу BLOB-объектов Azure и Azure Data Lake Storage. Microsoft Purview Information Protection предлагает политики защиты для защиты конфиденциальных данных в хранилище BLOB-объектов Azure и Azure Data Lake Storage. Purview предоставляет возможность публиковать метки на основе конфиденциальности содержимого. Вы можете создать политики защиты на основе этих меток конфиденциальности, чтобы разрешить или запретить доступ к определенным пользователям, что обеспечивает более безопасный и детализированный доступ к конфиденциальным файлам. Эта функция помогает не только свести к минимуму риск несанкционированного доступа и потенциальных утечек данных, но и повысить общую безопасность организации. Дополнительные сведения см. в статье "Создание и публикация политик защиты для источников Azure (предварительная версия)".

Защита ключей доступа

Ключи доступа к учетной записи хранения предоставляют полный доступ к данным учетной записи хранения и возможность создавать маркеры SAS. Не забудьте защитить ключи доступа. Для безопасного управления и ротации ключей воспользуйтесь Azure Key Vault. Доступ к общему ключу предоставляет пользователю полный доступ к данным учетной записи хранения. Доступ к общим ключам следует тщательно ограничить и отслеживать. Используйте делегированные пользователем маркеры SAS с ограниченным доступом в сценариях, когда невозможно использовать авторизацию через Microsoft Entra ID. Избегайте жесткого написания ключей доступа или сохраняйте их в любом месте обычного текста, доступного другим пользователям. Поверните ключи, если вы считаете, что они были скомпрометированы.

Это важно

Чтобы запретить пользователям доступ к данным в учетной записи хранения с общим ключом, вы можете запретить авторизацию общего ключа для учетной записи хранения. Подробный доступ к данным с минимальными привилегиями рекомендуется в качестве рекомендации по обеспечению безопасности. Авторизация на основе идентификатора Microsoft Entra с помощью управляемых удостоверений должна использоваться для сценариев, поддерживающих OAuth. Kerberos или SMTP следует использовать для Файлы Azure по протоколу SMB. Для Файлы Azure по протоколу REST можно использовать маркеры SAS. Доступ к общему ключу следует отключить, если не требуется, чтобы предотвратить его непреднамеренное использование. Дополнительные сведения см. в статье Предотвращение авторизации с общим ключом для учетной записи службы хранения Azure.

Чтобы защитить учетную запись служба хранилища Azure с помощью политик условного доступа Microsoft Entra, необходимо запретить авторизацию общего ключа для учетной записи хранения.

Если вы отключили доступ к общему ключу, и вы видите авторизацию общего ключа, указанную в журналах диагностики, это означает, что доверенный доступ используется для доступа к хранилищу. Дополнительные сведения см. в разделе "Доверенный доступ" для ресурсов, зарегистрированных в клиенте Microsoft Entra.

Дальнейшие шаги