Настройка мультитенантности в Azure Stack Hub
Вы можете настроить Azure Stack Hub для поддержки входа пользователей, которые находятся в других каталогах Microsoft Entra, что позволяет им использовать службы в Azure Stack Hub. Эти каталоги имеют "гостевую" связь с каталогом Azure Stack Hub и считаются гостевыми Microsoft Entra клиентами.
В качестве примера рассмотрен сценарий:
- Вы являетесь администратором службы contoso.onmicrosoft.com, клиента домашнего Microsoft Entra, который предоставляет службы управления удостоверениями и доступом для Azure Stack Hub.
- Мэри является администратором каталога adatum.onmicrosoft.com, гостевого Microsoft Entra клиента, в котором находятся гостевые пользователи.
- Компания Мэри (Adatum) использует службы IaaS и PaaS из вашей компании. Adatum хочет разрешить пользователям из гостевого каталога (adatum.onmicrosoft.com) выполнять вход и использовать ресурсы Azure Stack Hub, защищенные contoso.onmicrosoft.com.
В этом руководстве приведены шаги, необходимые в контексте этого сценария для включения или отключения мультитенантности в Azure Stack Hub для клиента гостевого каталога. Вы и Мэри можете выполнить этот процесс, зарегистрировав или отменив регистрацию клиента гостевого каталога, который включает или отключает вход в Azure Stack Hub и использование служб пользователями Adatum.
Если вы являетесь поставщиком облачных решений (CSP), у вас есть другие способы настройки и управления мультитенантной средой Azure Stack Hub.
Предварительные требования
Перед регистрацией или отменой регистрации гостевого каталога необходимо выполнить административные действия для соответствующих Microsoft Entra клиентов: домашнего каталога Azure Stack Hub (Contoso) и гостевого каталога (Adatum):
Установите и настройте PowerShell для Azure Stack Hub.
Скачайте средства Azure Stack Hub, а затем импортируйте модули Connect и Identity:
Import-Module .\Identity\AzureStack.Identity.psm1
Регистрация гостевого каталога
Чтобы зарегистрировать гостевой каталог для мультитенантности, необходимо настроить как домашний каталог Azure Stack Hub, так и гостевой каталог.
Настройка каталога Azure Stack Hub
Администратор службы contoso.onmicrosoft.com необходимо сначала подключить клиент гостевого каталога Adatum к Azure Stack Hub. Следующий скрипт настраивает Resource Manager Azure для приема входов от пользователей и субъектов-служб в клиенте adatum.onmicrosoft.com:
## The following Azure Resource Manager endpoint is for the ASDK. If you're in a multinode environment, contact your operator or service provider to get the endpoint, formatted as adminmanagement.<region>.<FQDN>.
$adminARMEndpoint = "https://adminmanagement.local.azurestack.external"
## Replace the value below with the Azure Stack Hub directory
$azureStackDirectoryTenant = "contoso.onmicrosoft.com"
## Replace the value below with the guest directory tenant.
$guestDirectoryTenantToBeOnboarded = "adatum.onmicrosoft.com"
## Replace the value below with the name of the resource group in which the directory tenant registration resource should be created (resource group must already exist).
$ResourceGroupName = "system.local"
## Replace the value below with the region location of the resource group.
$location = "local"
# Subscription Name
$SubscriptionName = "Default Provider Subscription"
Register-AzSGuestDirectoryTenant -AdminResourceManagerEndpoint $adminARMEndpoint `
-DirectoryTenantName $azureStackDirectoryTenant `
-GuestDirectoryTenantName $guestDirectoryTenantToBeOnboarded `
-Location $location `
-ResourceGroupName $ResourceGroupName `
-SubscriptionName $SubscriptionName
Настройка гостевого каталога
Затем Мэри (администратор каталога Adatum) должна зарегистрировать Azure Stack Hub в гостевом каталоге adatum.onmicrosoft.com, выполнив следующий скрипт:
## The following Azure Resource Manager endpoint is for the ASDK. If you're in a multinode environment, contact your operator or service provider to get the endpoint, formatted as management.<region>.<FQDN>.
$tenantARMEndpoint = "https://management.local.azurestack.external"
## Replace the value below with the guest directory tenant.
$guestDirectoryTenantName = "adatum.onmicrosoft.com"
Register-AzSWithMyDirectoryTenant `
-TenantResourceManagerEndpoint $tenantARMEndpoint `
-DirectoryTenantName $guestDirectoryTenantName `
-Verbose
Важно!
Если администратор Azure Stack Hub установит новые службы или обновления в будущем, может потребоваться снова запустить этот скрипт.
Запускайте его в любое время, чтобы проверить состояние приложений Azure Stack Hub в вашем каталоге.
Если вы заметили проблемы с созданием виртуальных машин в Управляемые диски (появилось в обновлении 1808), был добавлен новый поставщик дисковых ресурсов, который требует повторного запуска этого скрипта.
Информирование пользователей о возможности входа
Наконец, Мария может направлять пользователей Adatum с учетными @adatum.onmicrosoft.com записями для входа, посетив пользовательский портал Azure Stack Hub. Для систем с несколькими узлами URL-адрес пользовательского портала имеет формат https://portal.<region>.<FQDN>
. Для развертывания ASDK ИСПОЛЬЗУЕТся https://portal.local.azurestack.external
URL-адрес .
Мэри также должна направить всех иностранных субъектов (пользователей в каталоге Adatum без суффикса adatum.onmicrosoft.com) для входа с помощью https://<user-portal-url>/adatum.onmicrosoft.com
. Если клиент каталога не указан /adatum.onmicrosoft.com
в URL-адресе, он отправляется в каталог по умолчанию и получает сообщение об ошибке с сообщением о том, что администратор не дал согласие.
Отмена регистрации гостевого каталога
Если вы больше не хотите разрешать вход в службы Azure Stack Hub из клиента гостевого каталога, можно отменить регистрацию каталога. Опять же, необходимо настроить как домашний каталог Azure Stack Hub, так и гостевой каталог:
Как администратор гостевого каталога (в этом сценарии Мэри) выполните команду
Unregister-AzsWithMyDirectoryTenant
. Командлет удалит все приложения Azure Stack Hub из нового каталога.## The following Azure Resource Manager endpoint is for the ASDK. If you're in a multinode environment, contact your operator or service provider to get the endpoint, formatted as management.<region>.<FQDN>. $tenantARMEndpoint = "https://management.local.azurestack.external" ## Replace the value below with the guest directory tenant. $guestDirectoryTenantName = "adatum.onmicrosoft.com" Unregister-AzsWithMyDirectoryTenant ` -TenantResourceManagerEndpoint $tenantARMEndpoint ` -DirectoryTenantName $guestDirectoryTenantName ` -Verbose
Как администратор службы Azure Stack Hub (в этом сценарии) выполните
Unregister-AzSGuestDirectoryTenant
командлет :## The following Azure Resource Manager endpoint is for the ASDK. If you're in a multinode environment, contact your operator or service provider to get the endpoint, formatted as adminmanagement.<region>.<FQDN>. $adminARMEndpoint = "https://adminmanagement.local.azurestack.external" ## Replace the value below with the Azure Stack Hub directory $azureStackDirectoryTenant = "contoso.onmicrosoft.com" ## Replace the value below with the guest directory tenant. $guestDirectoryTenantToBeDecommissioned = "adatum.onmicrosoft.com" ## Replace the value below with the name of the resource group in which the directory tenant resource was created (resource group must already exist). $ResourceGroupName = "system.local" Unregister-AzSGuestDirectoryTenant -AdminResourceManagerEndpoint $adminARMEndpoint ` -DirectoryTenantName $azureStackDirectoryTenant ` -GuestDirectoryTenantName $guestDirectoryTenantToBeDecommissioned ` -ResourceGroupName $ResourceGroupName
Предупреждение
Действия по отключению мультитенантности должны выполняться по порядку. Шаг 1 не удастся выполнить, если перед ним выполнен шаг 2.
Получение отчета о работоспособности удостоверений Azure Stack Hub
Замените заполнители <region>
, <domain>
и <homeDirectoryTenant>
, а затем выполните следующий командлет от имени администратора Azure Stack Hub.
$AdminResourceManagerEndpoint = "https://adminmanagement.<region>.<domain>"
$DirectoryName = "<homeDirectoryTenant>.onmicrosoft.com"
$healthReport = Get-AzsHealthReport -AdminResourceManagerEndpoint $AdminResourceManagerEndpoint -DirectoryTenantName $DirectoryName
Write-Host "Healthy directories: "
$healthReport.directoryTenants | Where status -EQ 'Healthy' | Select -Property tenantName,tenantId,status | ft
Write-Host "Unhealthy directories: "
$healthReport.directoryTenants | Where status -NE 'Healthy' | Select -Property tenantName,tenantId,status | ft
Обновление разрешений клиента Microsoft Entra
Это действие очищает оповещение в Azure Stack Hub, указывающее, что каталог требует обновления. Выполните следующую команду в папке Azurestack-tools-master/identity:
Import-Module ..\Identity\AzureStack.Identity.psm1
$adminResourceManagerEndpoint = "https://adminmanagement.<region>.<domain>"
# This is the primary tenant Azure Stack Hub is registered to:
$homeDirectoryTenantName = "<homeDirectoryTenant>.onmicrosoft.com"
Update-AzsHomeDirectoryTenant -AdminResourceManagerEndpoint $adminResourceManagerEndpoint `
-DirectoryTenantName $homeDirectoryTenantName -Verbose
Сценарий запрашивает учетные данные администратора в клиенте Microsoft Entra и выполняется несколько минут. Оповещение снимите флажок после выполнения командлета.
Управление на основе портала не поддерживается для этой версии
Управление несколькими клиентами с помощью портала администрирования доступно только для версий 2102 и более поздних. Выберите более позднюю версию с помощью селектора в левой верхней части страницы.
Регистрация гостевого каталога
Чтобы зарегистрировать гостевой каталог для мультитенантности, необходимо настроить как домашний каталог Azure Stack Hub, так и гостевой каталог.
Настройка каталога Azure Stack Hub
Первым шагом является то, чтобы система Azure Stack Hub была осведомлена о гостевом каталоге. В этом примере каталог из компании Мэри, Adatum, называется adatum.onmicrosoft.com.
Войдите на портал администрирования Azure Stack Hub и перейдите в раздел Все службы — каталоги.
Нажмите кнопку Добавить , чтобы начать процесс подключения. Введите имя гостевого каталога "adatum.onmicrosoft.com", а затем нажмите кнопку Добавить.
Гостевой каталог отображается в представлении списка с состоянием "Незарегистрированный".
Только Мария имеет учетные данные для проверки подлинности в гостевом каталоге, поэтому для завершения регистрации необходимо отправить ей ссылку. Установите флажок adatum.onmicrosoft.com и нажмите кнопку Зарегистрировать.
Откроется новая вкладка браузера. Выберите Копировать ссылку в нижней части страницы и предоставьте ее Марии.
Если у вас есть учетные данные для гостевого каталога, вы можете выполнить регистрацию самостоятельно, выбрав Вход.
Настройка гостевого каталога
Мэри получила сообщение электронной почты со ссылкой для регистрации каталога. Она открывает ссылку в браузере и подтверждает идентификатор Microsoft Entra и конечную точку azure Resource Manager системы Azure Stack Hub.
Мэри входит в систему, используя свои учетные данные глобального администратора для adatum.onmicrosoft.com.
Примечание
Перед входом убедитесь, что блокирование всплывающих окон отключено.
Мария проверяет состояние каталога и видит, что он не зарегистрирован.
Мэри выбирает Зарегистрировать , чтобы начать процесс.
Примечание
Объекты, необходимые для Visual Studio Code, могут быть недоступны для создания и должны использовать PowerShell.
После завершения процесса регистрации Мария может просмотреть все приложения, созданные в каталоге, и проверка их состояние.
Мария успешно завершила процесс регистрации и теперь может направить пользователей Adatum с учетными @adatum.onmicrosoft.com записями для входа, посетив пользовательский портал Azure Stack Hub. Для систем с несколькими узлами URL-адрес пользовательского портала имеет формат
https://portal.<region>.<FQDN>
. Для развертывания ASDK ИСПОЛЬЗУЕТсяhttps://portal.local.azurestack.external
URL-адрес .
Важно!
Чтобы просмотреть состояние каталога на портале администрирования, оператору Azure Stack может потребоваться до одного часа.
Мэри также должна направить всех иностранных субъектов (пользователей в каталоге Adatum без суффикса adatum.onmicrosoft.com) для входа с помощью https://<user-portal-url>/adatum.onmicrosoft.com
. Если клиент каталога не указан /adatum.onmicrosoft.com
в URL-адресе, он отправляется в каталог по умолчанию и получает сообщение об ошибке с сообщением о том, что администратор не дал согласие.
Отмена регистрации гостевого каталога
Если вы больше не хотите разрешать вход в службы Azure Stack Hub из клиента гостевого каталога, можно отменить регистрацию каталога. Опять же, необходимо настроить как домашний каталог Azure Stack Hub, так и гостевой каталог:
Настройка гостевого каталога
Мэри больше не использует службы в Azure Stack Hub и должна удалить объекты. Она снова открывает URL-адрес, полученный по электронной почте, чтобы отменить регистрацию каталога. Перед началом этого процесса Мария удаляет все ресурсы из подписки Azure Stack Hub.
Мария выполняет вход, используя свои учетные данные глобального администратора для adatum.onmicrosoft.com.
Примечание
Перед входом убедитесь, что блокирование всплывающих окон отключено.
Мария видит состояние каталога.
Мэри выбирает Отменить регистрацию , чтобы начать действие.
После завершения процесса отображается состояние Не зарегистрировано:
Мария успешно отменила регистрацию каталога adatum.onmicrosoft.com.
Примечание
Отображение каталога как не зарегистрированного на портале администрирования Azure Stack может занять до одного часа.
Настройка каталога Azure Stack Hub
Как оператор Azure Stack Hub вы можете удалить гостевой каталог в любой момент, даже если Мария ранее не отменяла регистрацию каталога.
Войдите на портал администрирования Azure Stack Hub и перейдите в раздел Все службы — каталоги.
Установите флажок каталог adatum.onmicrosoft.com и нажмите кнопку Удалить.
Подтвердите действие удаления, введя да и выбрав Удалить.
Каталог успешно удален.
Управление необходимыми обновлениями
Обновления Azure Stack Hub могут ввести поддержку новых средств или служб, для которых может потребоваться обновление домашнего или гостевого каталога.
Как оператор Azure Stack Hub вы получаете на портале администрирования оповещение о необходимости обновления каталога. Вы также можете определить, требуется ли обновление для домашних или гостевых каталогов, просмотрев панель каталогов на портале администрирования. В каждом списке каталогов отображается тип каталога. Типом может быть домашний или гостевой каталог, и отображается его состояние.
Обновление каталогов Azure Stack Hub
Если требуется обновление каталога Azure Stack Hub, отображается состояние Требуется обновление . Пример:
Чтобы обновить каталог, установите флажок Имя каталога и нажмите кнопку Обновить.
Обновление гостевого каталога
Оператор Azure Stack Hub также должен сообщить владельцу гостевого каталога, что необходимо обновить каталог, используя URL-адрес, общий для регистрации. Оператор может повторно отправить URL-адрес, но он не меняется.
Мария, владелец гостевого каталога, открывает URL-адрес, полученный по электронной почте при регистрации каталога:
Мария выполняет вход, используя свои учетные данные глобального администратора для adatum.onmicrosoft.com. Перед входом убедитесь, что блокирование всплывающих окон отключено.
Мария видит состояние каталога, заявив, что требуется обновление.
Действие Обновить доступно для Марии, чтобы обновить гостевой каталог. Отображение каталога как зарегистрированного на портале администрирования Azure Stack может занять до одного часа.
Дополнительные возможности
Оператор Azure Stack Hub может просматривать подписки, связанные с каталогом. Кроме того, каждый каталог имеет действие для управления каталогом непосредственно в портал Azure. Для управления целевой каталог должен иметь разрешения на управление в портал Azure.