다음을 통해 공유


고객을 Azure Lighthouse에 등록하다

서비스 제공자로서 고객을 Azure Lighthouse에 가입시키는 방법을 이 문서에서 설명합니다. 이렇게 하면 고객의 Microsoft Entra 테넌트의 위임된 리소스(구독 및/또는 리소스 그룹)는 Azure 위임된 리소스 관리 통해 테넌트의 사용자가 관리할 수 있습니다.

이 항목에서 서비스 공급자 및 고객을 참조하지만 여러 테넌트 관리는 동일한 프로세스를 사용하여 Azure Lighthouse 설정하고 관리 환경을 통합할 수 있습니다.

여러 고객에 대해 온보딩 프로세스를 반복할 수 있습니다. 적절한 권한이 있는 사용자가 관리 테넌트에 로그인하면 해당 사용자는 각 개별 고객 테넌트에 로그인하지 않고도 고객 테넌시 범위에서 관리 작업을 수행할 수 있는 권한을 부여받을 수 있습니다.

참고 사항

고객은 Microsoft Marketplace에 게시한 관리 서비스 제품(퍼블릭 또는 프라이빗)을 구매할 때 대안으로 Azure Lighthouse에 등록할 수 있습니다. 여기에 설명된 온보딩 프로세스를 Microsoft Marketplace에 게시된 제품과 함께 사용할 수도 있습니다.

온보딩 프로세스를 사용하려면 서비스 공급자의 테넌트와 고객의 테넌트 둘 다에서 작업을 수행해야 합니다. 이러한 모든 단계는 이 문서에 설명되어 있습니다.

테넌트 및 구독 세부 정보 수집

고객의 테넌트를 온보딩하려면 활성 Azure 구독이 있어야 합니다. 템플릿을 수동으로 만드는 경우 알고 있어야 하는 사항은 다음과 같습니다.

  • 서비스 공급자 테넌트의 테넌트 ID(고객의 리소스를 관리하는 위치)
  • 고객 테넌트의 테넌트 ID(서비스 공급자가 관리하는 리소스 포함).
  • 서비스 공급자가 관리할(또는 서비스 공급자가 관리할 리소스 그룹을 포함하는) 고객 테넌트에 있는 각 특정 구독의 구독 ID

테넌트의 ID를 모르는 경우 Azure 포털, Azure PowerShell 또는 Azure CLI를 사용하여 검색할 수 있습니다.

Azure Portal에서 템플릿을 만드는 경우 테넌트 ID가 자동으로 제공됩니다. Azure 포털에서 템플릿을 만들기 위해 고객의 테넌트 또는 구독 세부 정보를 알 필요가 없습니다. 그러나 전체 구독이 아니라 고객의 테넌트에서 하나 이상의 리소스 그룹을 온보딩하려는 경우 각 리소스 그룹의 이름을 알아야 합니다.

역할 및 권한 정의

서비스 공급자는 단일 고객을 위해 여러 작업을 수행하고, 범위마다 다른 액세스 권한을 요구할 수 있습니다. 적절한 Azure 기본 제공 역할 할당하기 위해 필요한 만큼의 권한 부여를 정의할 수 있습니다. 각 권한 부여에는 관리 테넌트에서 Microsoft Entra 사용자, 그룹 또는 서비스 주체를 참조하는 principalId 포함됩니다.

참고 사항

명시적으로 지정하지 않는 한 Azure Lighthouse 설명서의 "사용자"에 대한 참조는 권한 부여의 Microsoft Entra 사용자, 그룹 또는 서비스 주체에 적용할 수 있습니다.

템플릿에서 권한 부여를 정의하려면 액세스 권한을 부여하려는 관리 테넌트의 각 사용자, 사용자 그룹 또는 서비스 주체에 대한 ID 값을 포함해야 합니다. 할당하려는 각 기본 제공 역할에 대한 역할 정의 ID도 포함해야 합니다. Azure 포털 템플릿을 만들면 사용자 계정과 역할을 선택할 수 있으며 이러한 ID 값이 자동으로 추가됩니다. 템플릿을 수동으로 만드는 경우, 관리 테넌트 내에서 Azure 포털, Azure PowerShell 또는 Azure CLI를 사용하여 사용자 ID를 가져올 수 있습니다.

나중에 필요할 때 테넌트의 사용자가 위임에 대한 액세스 권한을 제거할 수 있도록 고객을 온보딩할 때 관리 서비스 등록 할당 삭제 역할을 할당하는 것이 좋습니다. 이 역할을 할당하지 않으면 고객 테넌트의 사용자만 위임된 리소스를 제거할 수 있습니다.

가능하면 개별 사용자보다는 가능한 경우 각 할당에 Microsoft Entra 사용자 그룹을 사용하는 것이 좋습니다. 그러면 액세스 권한이 있는 그룹에 개별 사용자를 추가하거나 제거할 수 있는 유연성이 제공되므로 사용자를 변경하기 위해 온보딩 프로세스를 반복할 필요가 없습니다. 자동화 시나리오에 유용할 수 있는 서비스 주체에도 역할을 할당할 수 있습니다.

중요합니다

Microsoft Entra 그룹에 대한 권한을 추가하려면 Group 유형Security 설정해야 합니다. 이 옵션은 그룹을 만들 때 선택됩니다. 자세한 내용은 그룹 유형, 멤버 자격 유형 및 액세스 관리에 대한 자세한 내용을 참조하세요.

권한 부여를 정의할 때 사용자가 작업을 완료하는 데 필요한 권한만 갖도록 최소 권한 원칙을 따라야 합니다. 지원되는 역할 및 모범 사례에 대한 자세한 내용은 Azure Lighthouse 시나리오의 테넌트, 사용자 및 역할 참조하세요.

관리 테넌트에서 사용자가 자신의 역할을 일시적으로 승격할 수 있는 적격 권한 부여를 만들 수도 있습니다. 이 기능에는 특정 라이선스 요구 사항이 있습니다. 자세한 내용은 적격 권한 부여 만들기를 참조하세요.

고객 참여에 미치는 영향을 추적하고 인식을 받으려면 Microsoft 클라우드 파트너 프로그램 ID를 온보딩된 각 구독에 액세스할 수 있는 하나 이상의 사용자 계정과 연결합니다. 서비스 공급자 테넌트에서 이 연결을 수행해야 합니다. 파트너 ID와 연결된 테넌트에서 서비스 주체 계정을 만든 다음, 고객을 온보딩할 때마다 해당 서비스 주체를 포함하는 것이 좋습니다. 자세한 내용은 파트너 ID 연결을 참조하세요.

Azure Resource Manager 템플릿 만들기

고객을 온보딩하려면 다음 정보를 사용하여 제품에 대한 Azure Resource Manager 템플릿을 만들어야 합니다. 템플릿이 고객의 테넌트에 배포되면 mspOfferNamemspOfferDescription 값은 Azure 포털의 서비스 공급자 페이지 고객에게 표시됩니다.

필드 정의
mspOfferName 이 정의를 설명하는 이름입니다. 이 값은 고객에게 제품의 제목으로 표시되며, 고유한 값이어야 합니다.
mspOfferDescription 제품에 대한 간단한 설명(예: "Contoso VM 관리 제품") 이 필드는 선택 사항이지만 고객이 제안을 명확하게 이해할 수 있도록 입력하는 것이 좋습니다.
managedByTenantId 테넌트 ID
authorizations 테넌트의 사용자/그룹/SPN에 대한 principalId 값이며, 각각에는 고객이 권한 부여의 목적을 이해하는 데 도움이 되는 principalIdDisplayName이 있으며, 이는 기본 제공 roleDefinitionId 값에 매핑되어 액세스 수준을 지정합니다.

이 템플릿은 Azure 포털에서 만들거나 샘플스 리포지토리 제공된 템플릿을 수동으로 수정하여 만들 수 있습니다.

중요합니다

여기에 설명된 프로세스에는 같은 고객 테넌트에 구독을 온보딩하는 경우에도 온보딩되는 각 구독에 대한 별도의 배포가 필요합니다. 동일한 고객 테넌트의 여러 다른 구독 내에서 여러 리소스 그룹을 온보딩하는 경우에도 별도의 배포가 필요합니다. 그러나 단일 구독 내에 여러 리소스 그룹을 온보딩하는 것은 하나의 배포에서 수행할 수 있습니다.

동일한 구독 또는 구독 내의 리소스 그룹에 여러 제품이 적용되는 경우 별도의 배포도 필요합니다. 적용된 각 제안은 다른 mspOfferName을 사용해야 합니다.

Azure 포털에서 템플릿 만들기

Azure 포털에서 템플릿을 만들려면 My 고객으로 이동한 다음 개요 페이지에서 ARM 템플릿 만들기를 선택합니다.

ARM 템플릿 제품 만들기 페이지에서 이름과 선택 사항인 설명을 제공합니다. 이러한 값은 템플릿의 mspOfferNamemspOfferDescription에 사용되며 고객에게 표시될 수 있습니다. managedByTenantId 값은 로그인한 Microsoft Entra 테넌트에 따라 자동으로 제공됩니다.

그런 다음, 온보딩하려는 고객 범위에 따라 구독 또는 리소스 그룹을 선택합니다. 리소스 그룹을 선택하면 온보딩하려는 리소스 그룹의 이름을 제공해야 합니다. 필요한 경우 + 아이콘을 선택하여 추가 리소스 그룹을 동일한 구독에 추가할 수 있습니다. (추가 리소스 그룹을 다른 구독에 온보딩하려면 해당 구독에 대한 별도의 템플릿을 만들고 배포해야 합니다.)

마지막으로 + 권한 부여 추가를 선택하여 권한 부여를 만듭니다. 각 권한에 대해 다음 세부 정보를 제공하십시오.

  1. 인증에 포함할 계정 유형에 따라 주체 유형을 선택합니다. 이 유형은 사용자, 그룹 또는 서비스 주체일 수 있습니다. 이 예제에서는 사용자가 사용됩니다.
  2. + 사용자 선택 링크를 선택하여 선택 창을 엽니다. 검색 필드를 사용하여 추가할 사용자를 찾을 수 있습니다. 작업을 마쳤으면 선택을 클릭합니다. 사용자의 주체 ID가 자동으로 채워집니다.
  3. 선택한 사용자에 따라 표시 이름 필드를 검토하고 필요에 따라 수정합니다.
  4. 이 사용자에게 할당할 역할을 선택합니다.
  5. 액세스 유형에 대해 권한 또는 적격을 선택합니다. 적격을 선택하면 최대 기간, 다단계 인증, 승인 필요 여부에 대한 옵션을 지정해야 합니다. 이러한 옵션에 대한 자세한 내용은 적격한 권한 부여 만들기를 참조하세요. 적격 권한 부여 기능은 서비스 주체와 함께 사용할 수 없습니다.
  6. 추가를 선택하여 권한 부여를 만듭니다.

Azure portal에서 권한 부여 추가 섹션의 스크린샷입니다.

추가를 선택한 후 ARM 템플릿 제품 만들기 화면으로 돌아갑니다. + 권한 부여 추가를 다시 선택하여 필요한 만큼 권한 부여를 추가할 수 있습니다.

권한 부여를 모두 추가했으면 템플릿 보기를 선택합니다. 이 화면에서는 입력한 값에 해당하는 .json 파일이 표시됩니다. 다운로드를 선택하여 이 .json 파일의 복사본을 저장합니다. 그런 다음, 이 템플릿이 고객 테넌트에 배포될 수 있습니다. 또한 변경이 필요하면 이를 수동으로 편집할 수 있습니다.

중요합니다

생성된 템플릿 파일은 Azure 포털에 저장되지 않습니다. 템플릿 표시 화면을 벗어나기 전에 복사본을 다운로드해야 합니다.

수동으로 템플릿 만들기

Azure Resource Manager 템플릿(샘플스 리포지토리에 제공됨)과 구성에 맞게 수정하고 권한 부여를 정의하도록 수정하는 해당 매개 변수 파일을 사용하여 템플릿을 만들 수 있습니다. 원하는 경우 개별 매개 변수 파일을 사용하는 대신 템플릿에 직접 모든 정보를 포함할 수 있습니다.

선택하는 템플릿은 전체 구독, 리소스 그룹 또는 구독 내의 여러 리소스 그룹 중 어떤 항목을 온보딩할지에 따라 달라집니다. 또한 이러한 방식으로 구독을 등록하려는 경우 Microsoft Marketplace에 게시한 관리 서비스 제품을 구매한 고객에게 사용할 수 있는 템플릿을 제공합니다.

이를 온보딩하기 위해 이 Azure Resource Manager 템플릿 사용 그리고 이 매개 변수 파일을 수정하십시오.
구독 subscription.json subscription.parameters.json
리소스 그룹 rg.json rg.parameters.json
구독 내 여러 리소스 그룹 multi-rg.json multiple-rg.parameters.json
구독(Microsoft Marketplace에 게시된 제품을 사용하는 경우) marketplaceDelegatedResourceManagement.json marketplaceDelegatedResourceManagement.parameters.json

적격 권한 부여를 포함하고자 한다면 샘플 리포지토리의 delegated-resource-management-eligible-authorizations 섹션에서 해당 템플릿을 선택하세요.

전체 관리 그룹을 한 번의 배포로 온보딩할 수는 없지만 각 구독을 관리 그룹에 온보딩하도록 정책을 배포할 수 있습니다. 그러면 관리 그룹 리소스에서 직접 작업을 수행하는 대신 개별 구독으로 작업해야 하지만, 관리 그룹의 모든 구독에 액세스할 수 있습니다.

다음 예에서는 구독을 온보딩하는 데 사용할 수 있는 수정된 subscription.parameters.json.json 파일을 보여 줍니다. 리소스 그룹 매개 변수 파일(rg-delegated-resource-management 폴더에 있음)의 형식은 비슷하지만 온보딩할 특정 리소스 그룹을 식별하는 rgName 매개 변수도 포함합니다.

{
    "$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentParameters.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "mspOfferName": {
            "value": "Fabrikam Managed Services - Interstellar"
        },
        "mspOfferDescription": {
            "value": "Fabrikam Managed Services - Interstellar"
        },
        "managedByTenantId": {
            "value": "00000000-0000-0000-0000-000000000000"
        },
        "authorizations": {
            "value": [
                {
                    "principalId": "00000000-0000-0000-0000-000000000000",
                    "principalIdDisplayName": "Tier 1 Support",
                    "roleDefinitionId": "b24988ac-6180-42a0-ab88-20f7382dd24c"
                },
                {
                    "principalId": "00000000-0000-0000-0000-000000000000",
                    "principalIdDisplayName": "Tier 1 Support",
                    "roleDefinitionId": "36243c78-bf99-498c-9df9-86d9f8d28608"
                },
                {
                    "principalId": "00000000-0000-0000-0000-000000000000",
                    "principalIdDisplayName": "Tier 2 Support",
                    "roleDefinitionId": "acdd72a7-3385-48ef-bd42-f606fba81ae7"
                },
                {
                    "principalId": "00000000-0000-0000-0000-000000000000",
                    "principalIdDisplayName": "Service Automation Account",
                    "roleDefinitionId": "b24988ac-6180-42a0-ab88-20f7382dd24c"
                },
                {
                    "principalId": "00000000-0000-0000-0000-000000000000",
                    "principalIdDisplayName": "Policy Automation Account",
                    "roleDefinitionId": "18d7d88d-d35e-4fb5-a5c3-7773c20a72d9",
                    "delegatedRoleDefinitionIds": [
                        "b24988ac-6180-42a0-ab88-20f7382dd24c",
                        "92aaf0da-9dab-42b6-94a3-d43ce8d16293"
                    ]
                }
            ]
        }
    }
}

위 예제의 마지막 권한 부여는 사용자 액세스 관리자 역할이 있는 principalId를 추가합니다(18d7d88d-d35e-4fb5-a5c3-7773c20a72d9). 이 역할을 할당할 때 delegatedRoleDefinitionIds 속성과 하나 이상의 지원되는 Azure 기본 제공 역할을 포함해야 합니다. 이 권한 부여에서 만든 사용자는 고객 테넌트의 관리 ID에 해당 역할을 할당할 수 있습니다. 이러한 역할 할당은 수정할 수 있는 정책을 배포하는 데 필요합니다. 또한 사용자는 지원 인시던트를 만들 수 있습니다. 일반적으로 사용자 액세스 관리자 역할에 연결된 다른 사용 권한은 이 principalId에 적용되지 않습니다.

Azure Resource Manager 템플릿 배포

템플릿을 만든 후 고객 테넌트의 사용자가 이를 자신의 테넌트 내에 배포해야 합니다. 온보딩하려는 구독(또는 온보딩하려는 리소스 그룹을 포함하는 각 구독)마다 별도의 배포가 필요합니다.

여기에 설명된 프로세스를 사용하여 구독(또는 구독 내의 하나 이상의 리소스 그룹)을 온보딩하는 경우 Microsoft. ManagedServices 리소스 공급자가 해당 구독에 등록됩니다.

중요합니다

이 배포는 온보딩 중인 구독에 대해 Microsoft.Authorization/roleAssignments/write, Microsoft.Authorization/roleAssignments/deleteMicrosoft.Authorization/roleAssignments/read 권한(예: Owner)을 사용하는 역할을 가진 고객 테넌트의 계정에서 수행해야 합니다(또는 온보딩되는 리소스 그룹을 포함). 구독을 위임할 수 있는 사용자를 찾기 위해 고객 테넌트의 사용자는 Azure 포털에서 구독을 선택하고, AAM(액세스 제어) 열고, 소유자 역할을 가진 모든 사용자를 열 수 있습니다.

클라우드 솔루션 공급자(CSP) 프로그램을 통해 구독을 만든 경우 서비스 공급자 테넌트에서 Admin Agent 역할이 있는 사용자는 배포를 수행할 수 있습니다.

배포는 Azure 포털, Azure CLI 사용 또는 PowerShell을 사용하여 수행할 수 있습니다.

Azure 포털에서 템플릿을 배포하려면 아래에 설명된 프로세스를 따릅니다. 이러한 단계는 Owner 역할(또는 Microsoft.Authorization/roleAssignments/write, Microsoft.Authorization/roleAssignments/deleteMicrosoft.Authorization/roleAssignments/read 권한이 있는 다른 역할)이 있는 고객 테넌트에서 수행해야 합니다.

  1. Azure 포털의 서비스 공급자 페이지에서 Server 공급자 제안을 선택합니다.

  2. 화면 위쪽에서 제안 추가 옆에 있는 화살표를 선택한 다음, 템플릿을 통해 추가를 선택합니다.

    Azure 포털에서 템플릿을 통해 추가 옵션을 보여주는 스크린샷.

  3. 템플릿을 끌어서 놓아 업로드하거나 파일 찾아보기를 선택하여 템플릿을 찾아 업로드합니다.

  4. 해당하는 경우 별도의 매개 변수 파일이 있습니다. 상자를 선택한 다음, 매개 변수 파일을 업로드합니다.

  5. 템플릿(및 필요한 경우 매개 변수 파일)이 업로드되면 업로드를 선택합니다.

  6. 사용자 지정 배포 화면에서 표시되는 세부 정보를 검토합니다. 필요한 경우 이러한 값은 이 화면에서 또는 매개 변수 편집을 선택하여 변경할 수 있습니다.

  7. 검토 및 만들기를 선택한 다음, 만들기를 선택합니다.

몇 분 후에 배포가 완료되었다는 알림이 표시되어야 합니다.

또는 GitHub 리포지토리에서 사용하려는 템플릿 옆에 표시되는 Azure 배포 단추(Auto-deploy 열)를 선택합니다. 예제 템플릿은 Azure 포털에서 열립니다. 이 프로세스를 사용하는 경우 검토 및 만들기를 선택하기 전에 Msp 제안 이름, Msp 제안 설명, 관리되는 테넌트 ID권한 부여 값을 업데이트해야 합니다.

온보딩 성공 확인

고객 구독이 Azure Lighthouse 성공적으로 온보딩되면 서비스 공급자 테넌트의 사용자는 위의 프로세스를 통해 개별적으로 또는 적절한 권한이 있는 Microsoft Entra 그룹의 구성원으로 액세스 권한이 부여된 경우 구독 및 해당 리소스를 볼 수 있습니다. Azure 포털, Azure PowerShell 또는 Azure CLI 사용하여 리소스가 성공적으로 위임되었는지 확인할 수 있습니다.

서비스 공급자의 테넌트에서 다음을 수행합니다.

  1. 내 고객 페이지로 이동합니다.
  2. 고객을 선택합니다.
  3. Resource Manager 템플릿에서 제공한 제품 이름으로 구독을 볼 수 있는지 확인합니다.

중요합니다

내 고객에서 위임된 구독을 보려면 구독이 온보딩될 때 서비스 공급자의 테넌트에 있는 사용자에게 읽기 권한자 역할(또는 읽기 권한자 액세스를 포함하는 다른 기본 제공 역할)을 부여해야 합니다.

고객의 테넌트에서 다음을 수행합니다.

  1. 서비스 공급자 페이지로 이동합니다.
  2. 서비스 공급자 제품을 선택합니다.
  3. Resource Manager 템플릿에서 제공한 제품 이름으로 구독을 볼 수 있는지 확인합니다.

참고 사항

업데이트가 Azure 포털에 반영되기까지 배포가 완료된 후 최대 15분이 걸릴 수 있습니다. 브라우저를 새로 고침하거나, 로그인 및 로그아웃하거나, 새 토큰을 요청하여 Azure Resource Manager 토큰을 업데이트하는 경우 업데이트를 더 빨리 볼 수 있습니다.

고객이 온보딩된 후 변경해야 하는 경우 위임을 업데이트할 수 있습니다. 위임에 대한 액세스를 완전히 제거할 수도 있습니다.

문제 해결

고객을 성공적으로 등록할 수 없거나 사용자가 위임된 리소스에 액세스하는 데 문제가 있는 경우 다음 팁과 요구 사항을 확인하고 다시 시도하세요.

  • Azure 포털에서 고객 리소스를 확인해야 하는 사용자에게는 온보딩 프로세스 중에 Reader 역할(또는 읽기 권한자 액세스가 포함된 다른 기본 제공 역할)이 부여되어야 합니다.
  • managedbyTenantId 값은 등록 중인 구독의 테넌트 ID와 달라야 합니다.
  • 같은 범위에서 mspOfferName의 할당을 여러 개 할 수 없습니다.
  • Microsoft. ManagedServices 위임된 구독에 대해 리소스 공급자를 등록해야 합니다. 배포하는 동안 자동으로 발생하지만 수동으로 등록할 수도 있습니다.
  • 권한 부여에는 소유자 역할이 있는 사용자, DataActions가 있는 역할 또는 제한된 작업이 포함된 역할이 포함되어서는 안 됩니다.
  • 그룹은 Group typeSecurity로 설정하고 Microsoft 365가 되지 않도록 해야 합니다.
  • 그룹에 액세스 권한이 부여된 경우 사용자가 해당 그룹의 멤버인지 확인합니다. 그렇지 않은 경우 다른 배포를 수행할 필요 없이 Microsoft Entra ID 사용하여 그룹에 추가할 수 있습니다. 그룹 소유자가 관리하는 그룹의 구성원일 필요는 없으며 액세스 권한을 갖기 위해 추가해야 할 수도 있습니다.
  • 중첩된 그룹에 대한 액세스가 활성화되기 전 추가 지연이 있을 수 있습니다.
  • 권한 부여에 포함하는 Azure 기본 제공 역할에는 사용되지 않는 역할이 포함되어서는 안 됩니다. Azure 기본 제공 역할이 더 이상 사용되지 않는 경우 해당 역할로 온보딩된 모든 사용자는 액세스 권한을 잃게 되며 추가 위임을 온보딩할 수 없습니다. 이 문제를 해결하려면 지원되는 기본 제공 역할만 사용하도록 템플릿을 업데이트한 다음, 새 배포를 수행합니다.

다음 단계