다음을 통해 공유


Azure Data Lake Storage에서 Azure용 관리 ID 사용

Azure Data Lake Storage는 계층화된 보안 모델을 제공합니다. 이 모델을 사용하면 사용되는 네트워크 또는 리소스의 유형 및 하위 집합에 따라 애플리케이션 및 엔터프라이즈 환경에서 요구하는 스토리지 계정에 대한 액세스 수준을 보호하고 제어할 수 있습니다. 네트워크 규칙이 구성되면 지정된 네트워크 집합 또는 지정된 Azure 리소스 집합을 통해 데이터를 요청하는 애플리케이션만 스토리지 계정에 액세스할 수 있습니다. 스토리지 계정에 대한 액세스를 지정된 IP 주소, IP 범위, Azure VNet(Virtual Network)의 서브넷 또는 일부 Azure 서비스의 리소스 인스턴스에서 발생하는 요청으로 제한할 수 있습니다.

이전에 MSI(관리 서비스 ID)로 알려진 Azure용 관리 ID는 암호 관리에 도움이 됩니다. Azure 기능을 사용하는 Microsoft Dataverse 고객은 하나 이상의 Dataverse 환경에 사용할 수 있는 관리 ID(엔터프라이즈 정책 생성의 일부)를 만듭니다. 테넌트에서 프로비저닝될 이 관리 ID는 Dataverse에서 Azure Data Lake에 액세스하는 데 사용됩니다.

관리 ID를 사용하면 저장소 계정에 대한 액세스가 테넌트와 연결된 Dataverse 환경에서 발생한 요청으로 제한됩니다. Dataverse가 사용자를 대신하여 스토리지에 연결하면 요청이 안전하고 신뢰할 수 있는 환경에서 시작되었음을 증명하는 추가 컨텍스트 정보가 포함됩니다. 이렇게 하면 스토리지가 스토리지 계정에 대한 Dataverse 액세스 권한을 부여할 수 있습니다. 관리 ID는 신뢰를 설정하기 위해 컨텍스트 정보에 서명하는 데 사용됩니다. 이렇게 하면 Azure 서비스 간의 연결을 위해 Azure에서 제공하는 네트워크 및 인프라 보안 외에도 애플리케이션 수준 보안이 추가됩니다.

시작하기 전에

  • Azure CLI는 로컬 머신에 필요합니다. 다운로드 및 설치
  • 이 두 개의 PowerShell 모듈이 필요합니다. 없는 경우 PowerShell을 열고 다음 명령을 실행합니다.
    • Azure Az PowerShell 모듈: Install-Module -Name Az
    • Azure Az.Resources PowerShell 모듈: Install-Module -Name Az.Resources
    • Power Platform 관리 PowerShell 모듈: Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
  • GitHub의 이 압축 폴더 파일로 이동합니다. 그런 다음 다운로드를 선택하여 다운로드합니다. 압축된 폴더 파일을 PowerShell 명령을 실행할 수 있는 위치의 컴퓨터로 추출합니다. 압축된 폴더에서 추출된 모든 파일과 폴더는 원래 위치에 보존되어야 합니다.
  • 이 기능을 온보딩하려면 동일한 Azure 리소스 그룹 아래에 새 스토리지 컨테이너를 만드는 것이 좋습니다.

선택한 Azure 구독에 대한 엔터프라이즈 정책 사용

중요

이 작업을 완료하려면 Azure 구독 담당자 역할 액세스 권한이 있어야 합니다. Azure 리소스 그룹에 대한 개요 페이지에서 Azure 구독 ID를 가져옵니다.

  1. 관리자 권한으로 실행하여 Azure CLI를 열고 az login 명령을 사용하여 Azure 구독에 로그인합니다. 추가 정보: Azure CLI로 로그인
  2. (선택 사항) 여러 Azure 구독이 있는 경우 Update-AzConfig -DefaultSubscriptionForLogin { Azure subscription id }를 실행하여 기본 구독을 업데이트해야 합니다.
  3. 이 기능을 위한 시작하기 전에의 일부로 다운로드한 압축 폴더를 PowerShell을 실행할 수 있는 위치로 확장합니다.
  4. 선택한 Azure 구독에 대한 엔터프라이즈 정책을 사용하려면 PowerShell 스크립트 ./SetupSubscriptionForPowerPlatform.ps1을 실행합니다.
    • Azure 구독 ID를 제공합니다.

엔터프라이즈 정책 만들기

중요

이 작업을 완료하려면 Azure 리소스 그룹 담당자 역할 액세스 권한이 있어야 합니다. Azure 리소스 그룹에 대한 개요 페이지에서 Azure 구독 ID, 위치리소스 그룹 이름을 가져옵니다.

  1. 엔터프라이즈 정책을 만듭니다. PowerShell 스크립트 ./CreateIdentityEnterprisePolicy.ps1 실행

    • Azure 구독 ID를 제공합니다.
    • Azure 리소스 그룹 이름을 제공합니다.
    • 선호하는 엔터프라이즈 정책 이름을 제공합니다.
    • Azure 리소스 그룹 위치를 제공합니다.
  2. 정책 생성 후 ResourceId의 복사본을 저장합니다.

참고

다음은 정책 생성에 지원되는 유효한 위치 입력입니다. 자신에게 가장 적합한 위치를 선택합니다.

엔터프라이즈 정책에 사용할 수 있는 위치

미국 EUAP

미국

남아프리카 공화국

영국

오스트레일리아

대한민국

일본

인도

프랑스

유럽

아시아

노르웨이

독일

스위스

캐나다

브라질

UAE

싱가포르

Azure를 통해 엔터프라이즈 정책에 대한 독자 액세스 권한 부여

Azure 전역 관리자, Dynamics 365 관리자 및 Power Platform 관리자는 Power Platform 관리 센터에 액세스하여 엔터프라이즈 정책에 환경을 할당할 수 있습니다. 엔터프라이즈 정책에 액세스하려면 전역 또는 Azure Key Vault 관리자가 Dynamics 365 또는 Power PlatformAAA 관리자에게 독자 역할을 부여해야 합니다. 독자 역할이 부여되면 Dynamics 365 또는 Power Platform 관리자는 Power Platform 관리 센터에서 기업 정책을 보게 됩니다.

엔터프라이즈 정책에 대한 독자 역할이 부여된 Dynamics 365 및 Power Platform 관리자만 정책에 '환경을 추가'할 수 있습니다. 다른 Dynamics 365 및 PowerPlatform 관리자는 엔터프라이즈 정책을 볼 수 있지만 환경을 추가하려고 하면 오류가 발생합니다.

중요

이 작업을 완료하려면 사용자 액세스 관리자 또는 담당자와 같은 Microsoft.Authorization/roleAssignments/write 권한이 있어야 합니다.

  1. Azure Portal에 로그인합니다.
  2. Dynamics 365 Power Platform 관리자의 ObjectID를 얻습니다.
    1. 사용자 영역으로 이동합니다.
    2. Dynamics 365 또는 Power Platform 관리 사용자를 엽니다.
    3. 사용자의 개요 페이지에서 ObjectID를 복사합니다.
  3. 엔터프라이즈 정책 ID를 얻습니다.
    1. Azure Resource Graph Explorer로 이동합니다.
    2. 이 쿼리 실행: resources | where type == 'microsoft.powerplatform/enterprisepolicies' Azure Resource Graph Explorer에서 쿼리 실행
    3. 결과 페이지 오른쪽으로 스크롤하고 세부 정보 보기 링크를 선택합니다.
    4. 세부 정보 페이지에서 ID를 복사합니다.
  4. Azure CLI를 열고 다음 명령을 실행하여 <objId>AAA를 사용자의 ObjectID로 바꾸고 <EP Resource Id>를 엔터프라이즈 정책 ID로 바꿉니다.
    • New-AzRoleAssignment -ObjectId <objId> -RoleDefinitionName Reader -Scope <EP Resource Id>

엔터프라이즈 정책을 Dataverse 환경에 연결

중요

이 작업을 완료하려면 Power Platform 관리자 또는 Dynamics 365 관리자 역할이 있어야 합니다. 이 작업을 완료하려면 엔터프라이즈 정책에 대한 Reader 역할이 있어야 합니다.

  1. Dataverse 환경 ID를 얻습니다.
    1. Power Platform 관리 센터에 로그인합니다.
    2. 환경을 선택한 다음 환경을 엽니다.
    3. 세부 정보 섹션에서 환경 ID를 복사합니다.
    4. Dataverse 환경에 연결하려면 다음 PowerShell 스크립트를 실행합니다. ./NewIdentity.ps1
    5. Dataverse 환경 ID를 제공합니다.
    6. ResourceId를 제공합니다.
      StatusCode = 202는 링크가 성공적으로 생성되었음을 나타냅니다.
  2. Power Platform 관리 센터에 로그인합니다.
  3. 환경을 선택한 다음 이전에 지정한 환경을 엽니다.
  4. 최근 작업 영역에서 전체 기록을 선택하여 새 ID의 연결을 확인합니다.

Azure Data Lake Storage Gen2에 대한 네트워크 액세스 구성

중요

이 작업을 완료하려면 Azure Data Lake Storage Gen2 담당자 역할이 있어야 합니다.

  1. Azure Portal로 이동합니다.

  2. Azure Synapse Link for Dataverse 프로필에 연결된 스토리지 계정을 엽니다.

  3. 왼쪽 탐색 창에서 네트워킹을 선택합니다. 그런 다음 방화벽 및 가상 네트워크 탭에서 다음 설정을 선택합니다.

    1. 선택한 가상 네트워크 및 IP 주소에서 활성화됩니다.
    2. 리소스 인스턴스에서 신뢰할 수 있는 서비스 목록의 Azure 서비스가 이 스토리지 계정에 액세스하도록 허용을 선택합니다.
  4. 저장을 선택합니다.

Azure Synapse workspace에 대한 네트워크 액세스 구성

중요

이 작업을 완료하려면 Azure Synapse 관리자 역할이 있어야 합니다.

  1. Azure Portal로 이동합니다.
  2. Azure Synapse Link for Dataverse 프로필에 연결된 Azure Synapse workspace을 엽니다.
  3. 왼쪽 탐색 창에서 네트워킹을 선택합니다.
  4. Azure 서비스 및 리소스가 이 작업 영역에 액세스하도록 허용을 선택합니다.
  5. 모든 IP 범위에 대해 생성된 IP 방화벽 규칙이 있는 경우 이를 삭제하여 공용 네트워크 액세스를 제한합니다. Azure Synapse workspace 네트워크 설정
  6. 클라이언트 IP 주소를 기반으로 새로운 IP 방화벽 규칙을 추가합니다.
  7. 완료되면 저장을 선택합니다. 추가 정보: Azure Synapse Analytics IP 방화벽 규칙

중요

Dataverse: Dataverse 시스템 관리자 보안 역할이 있어야 합니다. 또한 Azure Synapse Link를 통해 내보내려는 테이블에는 변경 사항 추적 속성이 활성화되어 있어야 합니다. 추가 정보: 고급 옵션

Azure Data Lake Storage Gen2: Azure Data Lake Storage Gen2 계정과 소유자Storage Blob 데이터 기여자 역할 액세스 권한이 있어야 합니다. 스토리지 계정은 초기 설정과 델타 동기화 모두에 대해 계층 구조 네임스페이스를 활성화해야 합니다. 스토리지 계정 키 액세스 허용은 초기 설정에만 필요합니다.

Synapse 작업 영역: Synapse 작업 영역이 있어야 하며 Synapse Studio 내에서 Synapse 관리자 역할 액세스 권한이 있어야 합니다. Synapse 작업 영역은 사용자의 Azure Data Lake Storage Gen2 계정과 동일한 지역에 있어야 합니다. 스토리지 계정은 Synapse Studio 내에서 연결된 서비스로 추가되어야 합니다. Synapse 작업 영역을 만들려면 Synapse 작업 영역 만들기로 이동하십시오.

링크를 만들 때 Azure Synapse Link for Dataverse는 Dataverse 환경에서 현재 연결된 엔터프라이즈 정책에 대한 세부 정보를 가져온 다음 ID 클라이언트 암호 URL을 캐시하여 Azure에 연결합니다.

  1. Power Apps에 로그인하고 환경을 선택합니다.
  2. 왼쪽 탐색 창에서 Azure Synapse Link를 선택한 다음 + 새 링크를 선택합니다. 항목이 측면 패널 창을 경우 ...자세히를 선택한 다음 원하는 항목을 선택하세요.
  3. 관리 서비스 ID가 있는 엔터프라이즈 정책 선택을 선택한 후 다음을 선택합니다.
  4. 내보낼 테이블을 추가한 다음 저장을 선택합니다.

참고

Power Apps에서 관리 ID 사용 명령을 사용할 수 있게 하려면 위의 설정을 완료하여 엔터프라이즈 정책을 Dataverse 환경에 연결해야 합니다. 추가 정보: Dataverse 환경에 엔터프라이즈 정책 연결

  1. Power Apps(make.powerapps.com)에서 기존 Synapse Link 프로필로 이동합니다.
  2. 관리 ID 사용을 선택한 후 확인합니다. Power Apps에서 관리 ID 명령 사용

문제 해결

링크 생성 중에 403 오류가 발생하는 경우:

  • 관리 ID는 초기 동기화 중에 임시 권한을 부여하는 데 추가 시간이 걸립니다. 잠시 시간을 두고 나중에 작업을 다시 시도하세요.
  • 연결된 스토리지에 동일한 환경의 기존 Dataverse 컨테이너(dataverse-environmentName-organizationUniqueName)가 없는지 확인하세요.
  • Azure 구독 ID리소스 그룹 이름으로 PowerShell 스크립트 ./GetIdentityEnterprisePolicyforEnvironment.ps1을 실행하여 연결된 엔터프라이즈 정책 및 policyArmId를 식별할 수 있습니다.
  • Dataverse 환경 ID 및 policyArmId로 PowerShell 스크립트 ./RevertIdentity.ps1을 실행하여 엔터프라이즈 정책을 연결 해제할 수 있습니다.
  • PowerShell 스크립트 .\RemoveIdentityEnterprisePolicy.ps1 with policyArmId를 실행하여 엔터프라이즈 정책을 제거할 수 있습니다.

알려진 제한 사항

하나의 엔터프라이즈 정책만 Dataverse 환경에 동시에 연결할 수 있습니다. 관리 ID를 사용하도록 설정된 여러 Azure Synapse Link 링크를 만들어야 하는 경우 연결된 모든 Azure 리소스가 동일한 리소스 그룹 아래에 있는지 확인합니다.

참조 항목

Azure Synapse Link for Dataverse란?