Azure Stack Hub에서 다중 테넌트 구성

다른 Azure AD(Azure Active Directory) 디렉터리에 있는 사용자의 로그인을 지원하도록 Azure Stack Hub를 구성하여 Azure Stack Hub에서 서비스를 사용할 수 있도록 할 수 있습니다. 이러한 디렉터리에는 Azure Stack Hub 디렉터리와 "게스트" 관계가 있으며 게스트 Azure AD 테넌트로 간주됩니다.

예를 들어 다음과 같은 시나리오를 고려할 수 있습니다.

  • Azure Stack Hub에 ID 및 액세스 관리 서비스를 제공하는 홈 Azure AD 테넌트인 contoso.onmicrosoft.com 서비스 관리자입니다.
  • Mary는 게스트 사용자가 있는 게스트 Azure AD 테넌트인 adatum.onmicrosoft.com 디렉터리 관리자입니다.
  • Mary의 회사(Adatum)는 회사의 IaaS 및 PaaS 서비스를 사용합니다. Adatum은 게스트 디렉터리(adatum.onmicrosoft.com)의 사용자가 로그인하여 contoso.onmicrosoft.com 보호되는 Azure Stack Hub 리소스를 사용하도록 허용하려고 합니다.

이 가이드에서는 이 시나리오의 컨텍스트에서 게스트 디렉터리 테넌트에 대해 Azure Stack Hub에서 다중 테넌트를 사용하거나 사용하지 않도록 설정하는 데 필요한 단계를 제공합니다. 사용자와 Mary는 게스트 디렉터리 테넌트를 등록하거나 등록 취소하여 이 프로세스를 수행합니다. 이 테넌트는 Adatum 사용자의 Azure Stack Hub 로그인 및 서비스 사용을 사용하거나 사용하지 않도록 설정합니다.

CSP(클라우드 솔루션 공급자)인 경우 다중 테넌트 Azure Stack Hub를 구성하고 관리하는 다른 방법이 있습니다.

사전 요구 사항

게스트 디렉터리를 등록하거나 등록 취소하기 전에 사용자와 Mary는 해당 Azure AD 테넌트(Azure Stack Hub 홈 디렉터리(Contoso) 및 게스트 디렉터리(Adatum)에 대한 관리 단계를 완료해야 합니다.

게스트 디렉터리 등록

다중 테넌트용 게스트 디렉터리를 등록하려면 홈 Azure Stack Hub 디렉터리와 게스트 디렉터리를 모두 구성해야 합니다.

Azure Stack Hub 디렉터리 구성

contoso.onmicrosoft.com 서비스 관리자는 먼저 Adatum의 게스트 디렉터리 테넌트를 Azure Stack Hub에 온보딩해야 합니다. 다음 스크립트는 adatum.onmicrosoft.com 테넌트에 있는 사용자 및 서비스 주체의 로그인을 허용하도록 Azure Resource Manager 구성합니다.

## 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

게스트 디렉터리 구성

다음으로, Mary(Adatum의 디렉터리 관리자)는 다음 스크립트를 실행하여 adatum.onmicrosoft.com 게스트 디렉터리에 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"

Register-AzSWithMyDirectoryTenant `
 -TenantResourceManagerEndpoint $tenantARMEndpoint `
 -DirectoryTenantName $guestDirectoryTenantName `
 -Verbose

중요

Azure Stack Hub 관리자가 나중에 새 서비스 또는 업데이트를 설치하는 경우 이 스크립트를 다시 실행해야 할 수 있습니다.

언제든지 이 스크립트를 다시 실행하여 디렉터리에서 Azure Stack Hub 앱의 상태를 확인합니다.

Managed Disks VM을 만드는 데 문제가 있는 경우(1808 업데이트에 도입됨) 새 디스크 리소스 공급자가 추가되었으므로 이 스크립트를 다시 실행해야 합니다.

사용자가 로그인하도록 디렉션

마지막으로 Mary는 Azure Stack Hub 사용자 포털을 방문하여 Adatum 사용자에게 @adatum.onmicrosoft.com 계정을 사용하여 로그인하도록 지시할 수 있습니다. 다중 노드 시스템의 경우 사용자 포털 URL의 형식은 다음과 같습니다 https://portal.<region>.<FQDN>. ASDK 배포의 경우 URL은 .입니다 https://portal.local.azurestack.external.

또한 Mary는 외국 보안 주체(adatum.onmicrosoft.com 접미사가 없는 Adatum 디렉터리의 사용자)에게 로그인 https://<user-portal-url>/adatum.onmicrosoft.com하도록 지시해야 합니다. URL에서 디렉터리 테넌트를 지정 /adatum.onmicrosoft.com 하지 않으면 기본 디렉터리로 전송되고 관리자가 동의하지 않았다는 오류가 표시됩니다.

게스트 디렉터리 등록 취소

게스트 디렉터리 테넌트에서 Azure Stack Hub 서비스에 대한 로그인을 더 이상 허용하지 않으려면 디렉터리를 등록 취소할 수 있습니다. 홈 Azure Stack Hub 디렉터리와 게스트 디렉터리를 모두 구성해야 합니다.

  1. 게스트 디렉터리의 관리자(이 시나리오의 Mary)로 실행 Unregister-AzsWithMyDirectoryTenant합니다. 이 cmdlet은 새 디렉터리에서 모든 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 
    
  2. Azure Stack Hub의 서비스 관리자(이 시나리오에서 사용자)로서 cmdlet을 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
    

    경고

    다중 테넌시를 사용하지 않도록 설정하는 단계는 순서대로 수행해야 합니다. 2단계가 먼저 완료되면 1단계가 실패합니다.

Azure Stack Hub ID 상태 보고서 검색

<region>, <domain><homeDirectoryTenant> 자리 표시자를 바꾼 다음, 다음 cmdlet을 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

Azure AD 테넌트 권한 업데이트

이 작업은 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

이 스크립트는 Azure AD 테넌트에 대한 관리자 자격 증명을 묻는 메시지를 표시하며, 실행하는 데 몇 분 정도 걸립니다. cmdlet을 실행하면 경고가 지워지게 됩니다.

포털 기반 관리는 이 버전에서 지원되지 않습니다.

관리자 포털을 사용하는 다중 테넌트 관리는 버전 2102 이상에서만 사용할 수 있습니다. 페이지의 왼쪽 위에 있는 선택기를 사용하여 이후 버전을 선택합니다.

게스트 디렉터리 등록

다중 테넌트용 게스트 디렉터리를 등록하려면 홈 Azure Stack Hub 디렉터리와 게스트 디렉터리를 모두 구성해야 합니다.

Azure Stack Hub 디렉터리 구성

첫 번째 단계는 Azure Stack Hub 시스템이 게스트 디렉터리를 인식하도록 하는 것입니다. 이 예제에서는 Mary의 회사인 Adatum의 디렉터리를 adatum.onmicrosoft.com 라고 부릅니다.

  1. Azure Stack Hub 관리자 포털에 로그인하고 모든 서비스 - 디렉터리로 이동합니다.

    Screenshot that shows the list of directories.

  2. 추가를 선택하여 온보딩 프로세스를 시작합니다. 게스트 디렉터리 이름 "adatum.onmicrosoft.com"을 입력한 다음 추가를 선택합니다.

    Screenshot that shows how to add a new directory.

  3. 게스트 디렉터리가 목록 보기에 표시되고 상태가 등록 취소된 상태로 표시됩니다.

    Screenshot that shows the new guest directory with an unregistered status.

  4. Mary만 게스트 디렉터리에 인증할 자격 증명이 있으므로 등록을 완료하려면 링크를 보내야 합니다. adatum.onmicrosoft.com 확인란을 선택한 다음 등록을 선택합니다.

    Screenshot that shows selecting a directory to register.

  5. 새 브라우저 탭이 열립니다. 페이지 아래쪽에서 링크 복사 를 선택하고 Mary에게 제공합니다.

  6. 게스트 디렉터리에 대한 자격 증명이 있는 경우 로그인을 선택하여 등록을 직접 완료할 수 있습니다.

    Screenshot that shows selecting sign in.

게스트 디렉터리 구성

Mary는 디렉터리를 등록하는 링크가 포함된 이메일을 받았습니다. 브라우저에서 링크를 열고 Azure Stack Hub 시스템의 Azure Active Directory 및 Azure Resource Manager 엔드포인트를 확인합니다.

  1. Mary는 adatum.onmicrosoft.com 전역 관리자 자격 증명을 사용하여 로그인합니다.

    참고

    로그인하기 전에 팝업 차단을 사용하지 않도록 설정해야 합니다.

    Screenshot that shows signing in to manage a directory.

  2. Mary는 디렉터리의 상태를 검토하고 등록되지 않은 것을 확인합니다.

    Screenshot that shows an unregistered directory.

  3. Mary는 등록 을 선택하여 프로세스를 시작합니다.

    참고

    Visual Studio Code 필요한 개체를 만들지 못할 수 있으며 PowerShell을 사용해야 합니다.

    Screenshot that shows the starting directory registration.

  4. 등록 프로세스가 완료되면 Mary는 디렉터리에서 만든 모든 애플리케이션을 검토하고 상태를 확인할 수 있습니다.

    Screenshot that shows a registered directory.

  5. Mary는 등록 프로세스를 성공적으로 완료했으며 이제 Azure Stack Hub 사용자 포털을 방문하여 계정을 사용하여 @adatum.onmicrosoft.com Adatum 사용자에게 로그인하도록 지시할 수 있습니다. 다중 노드 시스템의 경우 사용자 포털 URL의 형식은 다음과 같습니다 https://portal.<region>.<FQDN>. ASDK 배포의 경우 URL은 .입니다 https://portal.local.azurestack.external.

중요

Azure Stack 운영자가 관리 포털에서 업데이트된 디렉터리 상태를 확인하는 데 최대 1시간이 걸릴 수 있습니다.

또한 Mary는 외국 보안 주체(adatum.onmicrosoft.com 접미사가 없는 Adatum 디렉터리의 사용자)에게 로그인 https://<user-portal-url>/adatum.onmicrosoft.com하도록 지시해야 합니다. URL에서 디렉터리 테넌트를 지정 /adatum.onmicrosoft.com 하지 않으면 기본 디렉터리로 전송되고 관리자가 동의하지 않았다는 오류가 표시됩니다.

게스트 디렉터리 등록 취소

게스트 디렉터리 테넌트에서 Azure Stack Hub 서비스에 대한 로그인을 더 이상 허용하지 않으려면 디렉터리를 등록 취소할 수 있습니다. 홈 Azure Stack Hub 디렉터리와 게스트 디렉터리를 모두 구성해야 합니다.

게스트 디렉터리 구성

Mary는 더 이상 Azure Stack Hub에서 서비스를 사용하지 않으며 개체를 제거해야 합니다. 디렉터리를 등록 취소하기 위해 전자 메일을 통해 받은 URL을 다시 엽니다. 이 프로세스를 시작하기 전에 Mary는 Azure Stack Hub 구독에서 모든 리소스를 제거합니다.

  1. Mary는 adatum.onmicrosoft.com 전역 관리자 자격 증명을 사용하여 로그인합니다.

    참고

    로그인하기 전에 팝업 차단을 사용하지 않도록 설정해야 합니다.

    Screenshot that shows selecting Sign In.

  2. Mary는 디렉터리의 상태를 봅니다.

    Screenshot that shows a registered directory.

  3. Mary는 등록 취소 를 선택하여 작업을 시작합니다.

    Screenshot that shows selecing Unregister to unregister a directory.

  4. 프로세스가 완료되면 상태가 등록되지 않음으로 표시됩니다.

    Screenshot that shows a directory that has been unregistered.

    Mary는 디렉터리 adatum.onmicrosoft.com 성공적으로 등록을 취소했습니다.

    참고

    Azure Stack 관리 포털에 등록되지 않은 디렉터리를 표시하는 데 최대 1시간이 걸릴 수 있습니다.

Azure Stack Hub 디렉터리 구성

Azure Stack Hub 연산자는 Mary가 이전에 디렉터리를 등록 취소하지 않은 경우에도 언제든지 게스트 디렉터리를 제거할 수 있습니다.

  1. Azure Stack Hub 관리자 포털에 로그인하고 모든 서비스 - 디렉터리로 이동합니다.

    Screenshot that shows all directories.

  2. adatum.onmicrosoft.com 디렉터리 확인란을 선택한 다음 제거를 선택합니다.

    Screenshot that shows selecting Remove for a directory.

  3. 예를 입력하고 제거를 선택하여 삭제 작업을 확인합니다.

    Screenshot that shows how to remove a directory.

    디렉터리를 제거했습니다.

필요한 업데이트 관리

Azure Stack Hub 업데이트는 홈 또는 게스트 디렉터리의 업데이트가 필요할 수 있는 새로운 도구 또는 서비스에 대한 지원을 도입할 수 있습니다.

Azure Stack Hub 운영자는 관리 포털에서 필요한 디렉터리 업데이트에 대해 알려주는 경고를 받습니다. 관리 포털에서 디렉터리 창을 확인하여 홈 또는 게스트 디렉터리에 대한 업데이트가 필요한지 여부를 확인할 수도 있습니다. 각 디렉터리 목록에는 디렉터리 유형이 표시됩니다. 형식은 홈 또는 게스트 디렉터리일 수 있으며 해당 상태가 표시됩니다.

Azure Stack Hub 디렉터리 업데이트

Azure Stack Hub 디렉터리 업데이트가 필요한 경우 업데이트 필수 상태가 표시됩니다. 예를 들면 다음과 같습니다.

Screenshot that shows a directory requiring an update.

디렉터리를 업데이트하려면 디렉터리 이름 확인란 을 선택한 다음 업데이트를 선택합니다.

게스트 디렉터리 업데이트

또한 Azure Stack Hub 운영자는 등록을 위해 공유된 URL을 사용하여 디렉터리를 업데이트해야 한다고 게스트 디렉터리 소유자에게 알려야 합니다. 운영자는 URL을 다시 보내지만 변경되지 않습니다.

게스트 디렉터리의 소유자인 Mary는 디렉터리를 등록할 때 이메일을 통해 받은 URL을 엽니다.

  1. Mary는 adatum.onmicrosoft.com 전역 관리자 자격 증명을 사용하여 로그인합니다. 로그인하기 전에 팝업 차단을 사용하지 않도록 설정해야 합니다.

    Screenshot that shows selecting Sign In.

  2. Mary는 업데이트가 필요하다고 말하는 디렉터리의 상태를 확인합니다.

  3. Mary가 게스트 디렉터리를 업데이트할 수 있도록 업데이트 작업을 사용할 수 있습니다. Azure Stack 관리 포털에 등록된 디렉터리를 표시하는 데 최대 1시간이 걸릴 수 있습니다.

추가 기능

Azure Stack Hub 운영자는 디렉터리에 연결된 구독을 볼 수 있습니다. 또한 각 디렉터리에는 Azure Portal 디렉터리를 직접 관리하는 작업이 있습니다. 관리하려면 대상 디렉터리에 Azure Portal 관리 권한이 있어야 합니다.

다음 단계