Совместное использование образов виртуальных машин коллекции в клиентах Azure с помощью регистрации приложений

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

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

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

Создание регистрации приложения

Создайте регистрацию приложения, которая будет использоваться обоими клиентами для общего доступа к ресурсам коллекции образов.

  1. Откройте Регистрация приложений в портал Azure.
  2. Выберите Новая регистрация в меню в верхней части страницы.
  3. В поле Имя введите myGalleryApp.
  4. В поддерживаемых типах учетных записей выберите учетные записи в любом каталоге организации (любой каталог Microsoft Entra — Multitenant) и личных учетных записей Майкрософт (например, Skype, Xbox).
  5. Для параметра URI перенаправления выберите Интернет в раскрывающемся списке Выбор платформы, введите https://www.microsoft.com, а затем щелкните Зарегистрировать. После создания регистрации приложения откроется страница обзора.
  6. На странице обзора скопируйте Идентификатор приложения (клиента) и сохраните его для будущего использования.
  7. Выберите Сертификаты и секреты и выберите Создать секрет клиента.
  8. В описании введите секрет межтенантного приложения коллекции.
  9. В поле Окончание срока действия измените значение по умолчанию 6 месяцев (рекомендуется) на 12 месяцев, а затем нажмите кнопку Добавить.
  10. Скопируйте значение секрета и сохраните его в безопасном месте. После выхода со страницы получить значение секрета невозможно.

Предоставьте разрешение на регистрацию приложения для использования коллекции.

  1. В портал Azure выберите коллекцию вычислений Azure, которую вы хотите поделиться с другим клиентом.
  2. Выберите Управление доступом (IAM), затем в разделе Добавить назначение ролей выберите Добавить.
  3. В разделе Роль выберите Читатель.
  4. В разделе "Назначение доступа к:" оставьте это как пользователь Microsoft Entra, группа или субъект-служба.
  5. В разделе Выбор членов введите myGalleryApp и выберите это значение, когда оно появится в списке. Когда все будет готово, нажмите кнопку Проверка и назначение.

Предоставление доступа клиенту 2

Предоставьте клиенту 2 доступ к приложению с помощью запроса входа в браузере. Замените <идентификатор клиента 2> идентификатором клиента, которому нужно предоставить доступ к вашей коллекции образов. Пользователи могут просматривать идентификатор клиента с помощью команды az account showAzure CLI.

Замените <идентификатор приложения (клиента)> идентификатором созданной регистрации приложения. Выполнив замены, вставьте URL-адрес в браузер и следуйте инструкциям на экране входа, чтобы войти в клиент 2.

https://login.microsoftonline.com/<Tenant 2 ID>/oauth2/authorize?client_id=<Application (client) ID>&response_type=code&redirect_uri=https%3A%2F%2Fwww.microsoft.com%2F 

На портале Azure войдите в систему как клиент 2 и предоставьте доступ к регистрации приложения группе ресурсов, в которой планируется создать виртуальную машину.

  1. Выберите группу ресурсов, а затем выберите Управление доступом (IAM). В разделе Добавить назначения ролей выберите Добавить.
  2. В разделе Роль введите Участник.
  3. В разделе "Назначение доступа к:" оставьте это как пользователь Microsoft Entra, группа или субъект-служба.
  4. В разделе Выбор членов введите myGalleryApp и выберите это значение, когда оно появится в списке. Когда все будет готово, нажмите кнопку Проверка и назначение.

Примечание.

Прежде чем использовать тот же управляемый образ для создания другой версии образа, необходимо дождаться завершения сборки и репликации версии образа.

Важно!

Нельзя развернуть виртуальную машину из образа в другом клиенте Azure с помощью портала. Чтобы создать на основе образа виртуальную машину для совместного использования в нескольких клиентах, необходимо использовать Azure CLI или PowerShell.

Создание виртуальной машины

Перед созданием виртуальной машины из общего образа вам потребуется следующее:

  • Идентификаторы клиента из исходной подписки и подписки, в которой требуется создать виртуальную машину.
  • Идентификатор клиента регистрации приложения и секрета.
  • Идентификатор изображения, который требуется использовать.

Войдите в субъект-службу для клиента 1, используя идентификатор приложения, ключ приложения и идентификатор клиента 1. Если потребуется, идентификаторы клиентов можно получить с помощью az account show --query "tenantId".

В этом примере показано, как создать виртуальную машину из обобщенного образа. Если вы используете специализированный образ, см. статью "Создание виртуальной машины с помощью специализированной версии образа".


tenant1='<ID for tenant 1>'
tenant2='<ID for tenant 2>'
appid='<client ID of the app registration>'
secret='<secret from the app registration>'

az account clear
az login --service-principal -u $appid -p $secret --tenant $tenant1
az account get-access-token 

Войдите в субъект-службу для клиента 2, используя идентификатор приложения, ключ приложения и идентификатор клиента 2.

az login --service-principal -u $appid -p $secret --tenant $tenant2
az account get-access-token

Создайте виртуальную машину. Замените сведения в этом примере реальными данными.

imageid="<ID of the image that you want to use>"
az vm create \
  --resource-group myResourceGroup \
  --name myVM \
  --image $imageid \
  --admin-username azureuser \
  --generate-ssh-keys