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

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

Внимание

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

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

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

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

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

В следующей таблице приведены сведения о поддерживаемых параметрах авторизации для больших двоичных объектов:

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

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

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

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

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

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

    С помощью управления доступом на основе ролей Azure (Azure RBAC) можно управлять разрешениями субъекта безопасности, предоставленными для ресурсов BLOB-объектов, очередей и таблиц в учетной записи хранения. Вы также можете использовать управление доступом на основе атрибутов 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 поддерживают авторизацию на основе идентификаторов по протоколу SMB через AD DS. Среду AD DS можно разместить на локальных компьютерах или на виртуальных машинах Azure. Поддерживается доступ к Файлам Azure по протоколу SMB с использованием учетных данных AD DS с локальных компьютеров или виртуальных машин Azure, подключенных к домену. Вы можете использовать одновременно Azure RBAC для управления доступом на уровне общей папки и списки DACL NTFS для применения разрешений на уровне каталогов и файлов. Дополнительные сведения о проверке подлинности в Файлах Azure с использованием доменных служб см. в этом обзоре.

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

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

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

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

Внимание

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

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

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

Следующие шаги