Отправка рабочего процесса в Microsoft Genomics с использованием SAS вместо ключа учетной записи хранения
Это краткое руководство демонстрирует, как отправить рабочий процесс в службу Microsoft Genomics, используя файл config.txt с подписанным URL-адресом (SAS) вместо ключей учетной записи хранения. Эта функция может быть полезна, если есть опасения в отношении раскрытия ключа учетной записи хранения в файле config.txt.
В этой статье предполагается, что вы уже установили и запустили клиент msgen
и знаете, как использовать службу хранилища Azure. Если вы успешно отправили рабочий процесс с использованием предоставленного примера данных, можно продолжить работу с этой статьей.
Что такое SAS?
Подписанный URL-адрес (SAS) обеспечивает делегированный доступ к ресурсам в вашей учетной записи хранения. С помощью SAS можно предоставить доступ к ресурсам в учетной записи хранения, не предоставляя общий доступ к ключам учетной записи. Это ключевой момент использования подписанного URL-адреса в приложениях — SAS представляет собой безопасный способ предоставления общего доступа к ресурсам хранилища без ущерба для ключей учетной записи.
В Microsoft Genomics следует отправлять подписанный URL-адрес уровня службы, который предоставляет доступ только к большому двоичному объекту или контейнеру, где хранятся входные и выходные файлы.
Универсальный код ресурса (URI) для токена SAS на уровне службы состоит из URI ресурса, к которому SAS будет предоставлять доступ, и следующего за ним токена SAS. Токен SAS представляет собой строку запроса, которая содержит всю информацию, необходимую для аутентификации SAS, а также сведения о ресурсе, разрешениях для доступа, интервал времени, в течение которого URL-адрес действителен, поддерживаемый IP-адрес или диапазон адресов, с которых могут поступать запросы, поддерживаемый протокол, с помощью которого может быть выполнен запрос, необязательный идентификатор политики доступа, связанный с запросом, и сам подписанный URL-адрес.
Необходимые свойства SAS для отправки рабочего процесса в службу Microsoft Genomics
Для каждого рабочего процесса, который отправляется в службу Microsoft Genomics, требуется два или более токенов SAS, по одному для каждого входного файла и один для выходного контейнера.
SAS для входных файлов должен иметь следующие свойства:
- Область (учетная запись, контейнер, большой двоичный объект): большой двоичный объект.
- Окончание срока действия: через 48 часов.
- Разрешения: чтение.
SAS для выходного контейнера должен иметь следующие свойства:
- Область (учетная запись, контейнер, большой двоичный объект): контейнер.
- Окончание срока действия: через 48 часов.
- Разрешения: чтение, запись, удаление.
Создание SAS для входных файлов и выходного контейнера
Существует два способа создания токена SAS: с использованием Обозревателя службы хранилища Azure или программным способом. При написании кода можно самостоятельно создать SAS. Можно также использовать пакет SDK службы хранилища Azure на предпочитаемом языке.
Настройка. Создание SAS с помощью Обозревателя службы хранилища Azure
Обозреватель службы хранилища Azure — это инструмент для управления ресурсами, сохраненными в службе хранилища Azure. Дополнительные сведения об Обозревателе службы хранилища Azure см. здесь.
SAS для входных файлов должен быть привязан к конкретному входному файлу (большому двоичному объекту). Чтобы создать токен SAS, следуйте этим инструкциям. После создания SAS на экране отобразятся полный URL-адрес со строкой запроса, а также сама строка запроса. Их можно скопировать.
Настройка. Создание SAS программным способом
Чтобы создать SAS с помощью SDK службы хранилища Azure, обратитесь к документации, доступной для нескольких языков, включая .NET, Python и Node.js.
Создание подписанного URL-адреса возможно без использования пакета SDK. Строку запроса SAS можно написать, включив все данные, необходимые для проверки подлинности SAS. В этих инструкциях подробно описаны компоненты строки запроса SAS и ее создание. Необходимый SAS создается путем создания HMAC с использованием информации для проверки подлинности большого двоичного объекта или контейнера, как описано в этих инструкциях.
Добавление SAS в файл config.txt
Чтобы запустить рабочий процесс через службу Microsoft Genomics, используя строку запроса SAS, удалите из файла config.txt ключи. Затем добавьте строку запроса SAS (которая начинается с ?
) к имени выходного контейнера, как показано ниже
Отправьте рабочий процесс через клиент Python Microsoft Genomics с помощью следующей команды, добавив соответствующую строку запроса SAS к каждому из имен входных больших двоичных объектов.
msgen submit -f [full path to your config file] -b1 [name of your first paired end read file, SAS query string appended] -b2 [name of your second paired end read file, SAS query string appended]
В случае добавления имен входных файлов в файл config.txt
Можно также напрямую добавить в файл config.txt имена пар целевых файлов чтения, добавив токены запросов SAS, как показано ниже.
В этом случае используйте клиент Python Microsoft Genomics для отправки вашего рабочего процесса с помощью следующей команды, опустив команды -b1
и -b2
.
msgen submit -f [full path to your config file]
Следующие шаги
В этой статье использовались токены SAS вместо ключей учетной записи для отправки рабочего процесса в службу Microsoft Genomics через клиент Python msgen
. Дополнительные сведения об отправке рабочего процесса и других командах, которые можно использовать в службе Microsoft Genomics, см. в разделе часто задаваемых вопросов.