Создание маркеров SAS для контейнеров хранилища

В этой статье вы узнаете, как создать делегирование пользователей, маркеры подписанного URL-адреса (SAS), используя портал Azure или служба хранилища Azure Обозреватель. Маркеры SAS делегирования пользователей защищены учетными данными Microsoft Entra. Маркеры SAS обеспечивают безопасный делегированный доступ к ресурсам в учетной записи хранения Azure.

Screenshot of a storage url with SAS token appended.

Совет

Управляемые удостоверения предоставляют альтернативный метод для предоставления доступа к данным хранилища без необходимости включать маркеры SAS в HTTP-запросы. См. управляемые удостоверения для перевода документов.

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

Вот как в общих чертах работают маркеры SAS:

  • Приложение отправляет маркер SAS в служба хранилища Azure в рамках запроса REST API.

  • Служба хранилища проверяет, является ли SAS допустимым. В этом случае запрос авторизован.

  • Запрос отклоняется, если маркер SAS считается недопустимым. Если да, возвращается код ошибки 403 (запрещено).

В хранилище BLOB-объектов Azure предлагается три типа ресурсов:

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

Внимание

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

  • Операции, использующие маркеры SAS, должны выполняться только по соединению HTTPS, а сами URI подписанных URL-адресов должны распространяться только по безопасным соединениям, таким как HTTPS.

Необходимые компоненты

Чтобы приступить к работе, вам потребуется следующее:

  • Активная учетная запись Azure. Если ее нет, можно создать бесплатную учетную запись.

  • Ресурс Переводчика.

  • Учетная запись хранилища BLOB-объектов Azure с производительностью стандартного уровня. Кроме того, необходимо создать контейнеры для хранения и упорядочивания файлов в учетной записи хранения. Если вы не знаете, как создать учетную запись хранения Azure с контейнером хранилища, следуйте этим кратким руководствам:

    • Создание учетной записи хранения. При создании учетной записи хранения выберите уровень производительности Стандартныйв поле Сведения об экземпляре>Производительность.
    • Создание контейнера. При создании контейнера в окне Создание контейнера установите для поля Уровень общего доступа значение Контейнер (анонимный доступ на чтение для контейнеров и файлов).

Создание маркеров SAS на портале Azure

Перейдите к портал Azure и перейдите к контейнеру или конкретному файлу, как показано ниже, и выполните следующие действия:

Создание маркера SAS для контейнера Создание маркера SAS для определенного файла
Учетная запись хранения → Контейнеры → ваш контейнер. Учетная запись хранения → Контейнеры → ваш контейнер → ваш файл.
  1. Щелкните правой кнопкой мыши контейнер или файл и выберите Создать SAS в раскрывающемся меню.

  2. Выберите Метод подписыванияКлюч делегирования пользователя.

  3. Определите разрешения, установив и (или) сняв соответствующий флажок:

    • Исходный контейнер или файл должны назначать доступ для чтения и списка.

    • Целевойконтейнер или файл должны назначить доступ к записи и списку.

  4. Укажите дату и время начала и окончания срока действия подписанного ключа.

    • При создании подписанного URL-адреса (SAS) длительность по умолчанию составляет 48 часов. Через 48 часов вам потребуется создать новый маркер.
    • Рекомендуется задать длительный период времени использования учетной записи хранения для операций службы Переводчик.
    • Значение срока действия определяется тем, используется ли ключ учетной записи или метод подписывания ключаделегирования пользователей:
      • Ключ учетной записи. Хотя ограничение максимального времени не налагается, рекомендуется настроить политику истечения срока действия, чтобы ограничить интервал и свести к минимуму компромисс. Настройте политику истечения срока действия для подписей общего доступа.
      • Ключ делегирования пользователей: значение срока действия не более семи дней после создания маркера SAS. SAS недействителен после истечения срока действия ключа делегирования пользователей, поэтому SAS с истекающим сроком действия больше семи дней по-прежнему будет действителен только в течение семи дней. Дополнительные сведения см. в статье"Использование учетных данных Microsoft Entra для защиты SAS".
  5. Поле Разрешенные IP-адреса является необязательным. В нем указывается IP-адрес или диапазон IP-адресов, из которых принимаются запросы. Если IP-адрес запроса не соответствует IP-адресу или диапазону адресов, указанному в маркере SAS, авторизация завершается ошибкой. IP-адрес или диапазон IP-адресов должен быть общедоступным IP-адресом, а не частным. Дополнительные сведения см. в разделе "Указание IP-адреса" или диапазона IP-адресов.

  6. Поле Разрешенные протоколы является необязательным и указывает протокол, разрешенный для запроса, созданного с помощью SAS. Значение по умолчанию — HTTPS.

  7. Проверьте настройки и нажмите Создать маркер SAS и URL-адрес.

  8. Строка запроса маркера BLOB-объектов и URL-адрес SAS BLOB-объектов отображаются в нижней области окна.

  9. Скопируйте значения маркера SAS большого двоичного объекта и URL-адреса и вставьте их в безопасное место. Они будут показаны только один раз, и вы не сможете получить его после закрытия окна.

  10. Чтобы создать URL-адрес SAS, добавьте маркер SAS (URI) к URL-адресу службы хранилища.

Создание маркеров SAS с помощью Обозревателя службы хранилища Azure

Обозреватель службы хранилища Azure — это бесплатное отдельное приложение, с помощью которого можно с легкостью управлять ресурсами в облачном хранилище Azure с вашего компьютера.

  • Вам потребуется приложение служба хранилища Azure Обозреватель, установленное в среде разработки Windows, macOS или Linux.

  • После установки приложения "Обозреватель службы хранилища Azure" подключите его к учетной записи хранения, которую вы используете для функции "Перевод документов". Выполните следующие действия, чтобы создать маркеры для контейнера хранилища или конкретного файла BLOB-объектов:

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

  2. Разверните узел "Учетные записи хранения" и выберите Контейнеры больших двоичных объектов.

  3. Разверните узел "Контейнеры больших двоичных объектов" и щелкните правой кнопкой мыши узел контейнера хранилища, чтобы открыть меню "Параметры".

  4. В меню "Параметры" выберите Подписанный URL-адрес.

  5. В окне Подписанный URL-адрес сделайте следующее.

    • Выберите Политика доступа (значение по умолчанию — "Нет").
    • Укажите дату и время начала и окончания срока действия подписанного ключа. Рекомендуется использовать короткий срок существования, поскольку отозвать созданный SAS невозможно.
    • Выберите Часовой пояс для даты/времени начала и окончания срока действия (по умолчанию выбрано местное время).
    • Определите разрешения контейнера, установив или сняв соответствующий флажок.
    • Проверьте настройки и нажмите Создать.
  6. Откроется новое окно с именем контейнера, URI и строкой запроса для контейнера.

  7. Скопируйте значения контейнера, URI и строки запроса и вставьте в безопасное место. Они будут показаны только один раз, и вы не сможете получить их после закрытия окна.

  8. Чтобы создать URL-адрес SAS, добавьте маркер SAS (URI) к URL-адресу службы хранилища.

Предоставление доступа с помощью подписанного URL-адреса

Подписанный URL-адрес включает специальный набор параметров запроса. Эти параметры указывают, как клиент обращается к ресурсам.

Подписанный URL-адрес можно включить в запросы REST API двумя способами:

  • Используйте подписанный URL-адрес в качестве значений sourceURL и targetURL.

  • Добавьте строку запроса SAS к существующим значениям sourceURL и targetURL.

Ниже приведен пример запроса REST API:

{
    "inputs": [
        {
            "storageType": "File",
            "source": {
                "sourceUrl": "https://my.blob.core.windows.net/source-en/source-english.docx?sv=2019-12-12&st=2021-01-26T18%3A30%3A20Z&se=2021-02-05T18%3A30%3A00Z&sr=c&sp=rl&sig=d7PZKyQsIeE6xb%2B1M4Yb56I%2FEEKoNIF65D%2Fs0IFsYcE%3D"
            },
            "targets": [
                {
                    "targetUrl": "https://my.blob.core.windows.net/target/try/Target-Spanish.docx?sv=2019-12-12&st=2021-01-26T18%3A31%3A11Z&se=2021-02-05T18%3A31%3A00Z&sr=c&sp=wl&sig=AgddSzXLXwHKpGHr7wALt2DGQJHCzNFF%2F3L94JHAWZM%3D",
                    "language": "es"
                },
                {
                    "targetUrl": "https://my.blob.core.windows.net/target/try/Target-German.docx?sv=2019-12-12&st=2021-01-26T18%3A31%3A11Z&se=2021-02-05T18%3A31%3A00Z&sr=c&sp=wl&sig=AgddSzXLXwHKpGHr7wALt2DGQJHCzNFF%2F3L94JHAWZM%3D",
                    "language": "de"
                }
            ]
        }
    ]
}

Вот и все! Вы только что узнали, как создать маркеры SAS для авторизации доступа клиентов к данным.

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