Общие сведения о подписях общего доступа
Не рекомендуется использовать ключи учетной записи хранения совместно с внешними сторонними приложениями. Если эти приложения нуждаются в доступе к данным, необходимо защитить свои подключения без использования ключей учетной записи хранения.
Для недоверенных клиентов используйте подпись общего доступа (SAS). SAS — это строка, содержащая маркер безопасности, который можно связать с универсальным кодом ресурса (URI). Вы можете использовать SAS для делегирования доступа к объектам хранилища и указывать ограничения, например разрешения и диапазон времени доступа.
Например, вы можете предоставить клиенту токен SAS, чтобы он мог загружать изображения в файловую систему хранилища BLOB-объектов. Отдельно вы можете предоставить веб-приложению разрешение на считывание этих изображений. В обоих случаях вы разрешаете лишь тот доступ, который необходим приложению для выполнения задачи.
Типы подписей общего доступа
служба хранилища Azure поддерживает три типа подписей общего доступа.
Делегирование пользователей с помощью SAS
SAS делегирования пользователя защищен с помощью учетных данных Microsoft Entra, а не ключа учетной записи хранения. Это делает его наиболее безопасным типом SAS. Microsoft рекомендует по возможности использовать SAS делегирования пользователя, поскольку такой SAS привязывается к идентичности пользователя или субъекта-службы, создавшего его. SAS с делегированием пользователей поддерживается в Хранилище BLOB-объектов (включая Data Lake Storage), Queue Storage, Table Storage и Файлы Azure.
Служба SAS
SAS Service SAS (прежнее название — SAS уровня обслуживания) позволяет получить доступ к ресурсу в одной службе служба хранилища Azure. Используйте этот тип SAS, например, чтобы разрешить приложению получить список файлов в файловой системе или скачать файл. Служебный SAS подписывается ключом учетной записи хранилища.
SAS для учетной записи
SAS учетной записи (ранее называвшийся SAS уровня учетной записи) позволяет получить доступ ко всему, к чему может предоставить доступ SAS службы, а также к дополнительным ресурсам и возможностям. Например, можно использовать SAS учётной записи, чтобы предоставить возможность создавать файловые системы. SAS учетной записи также подписывается с использованием ключа учетной записи хранения.
Important
В случаях, когда необходим SAS, Microsoft рекомендует по возможности использовать SAS делегирования пользователя. SAS с делегированием пользователя более безопасен, так как использует учетные данные Microsoft Entra вместо ключа учетной записи, который иначе может быть скомпрометирован.
Обычно SAS используют для сервиса, в котором пользователи читают и записывают свои данные в вашу учетную запись хранения. Учетные записи, в которых хранятся данные пользователей, имеют две типичные структуры:
Клиенты отправляют и скачивают данные с помощью службы интерфейсного прокси-сервера, выполняющей проверку подлинности. Эта служба интерфейсного прокси-сервера позволяет проверять бизнес-правила. Однако для больших объемов данных или крупных транзакций масштабирование службы в соответствии с потребностями может оказаться дорогостоящей или сложной задачей.
Упрощенная служба аутентифицирует клиента по мере необходимости. Затем она создает SAS. После получения SAS клиент может обращаться к ресурсам учетной записи хранения напрямую. SAS определяет разрешения и интервал доступа клиента. Это снижает необходимость направлять все данные через внешнюю прокси-службу.