Microsoft Dataverse를 위한 Openflow Connector 설정하기

참고

커넥터에는 커넥터 약관 이 적용됩니다.

이 항목에서는 Microsoft Dataverse를 위한 Openflow Connector를 설정하는 단계에 대해 설명합니다.

전제 조건

  1. Openflow Connector for Microsoft Dataverse 정보 을 검토했는지 확인합니다.

  2. Openflow - BYOC 설정 또는 :doc:`/user-guide/data-integration/openflow/setup-openflow-spcs`을 완료했는지 확인합니다.

자격 증명 받기

Microsoft Dataverse 관리자는 다음 단계를 수행합니다.

  1. 작업할 Dataverse 환경이 있고 https://admin.powerplatform.microsoft.com/을 통해 해당 환경에 액세스할 수 있는지 확인합니다.

  2. portal.azure.com에서 Microsoft Entra(ID)에 애플리케이션이 등록되어 있는지 확인합니다. 이 애플리케이션은 당사의 Dataverse 환경이 제공되는 테넌트에 대한 액세스 권한이 있어야 합니다. 애플리케이션을 등록하려면 `가이드(<https://learn.microsoft.com/en-us/power-apps/developer/data-platform/walkthrough-register-app-azure-active-directory>`_)를 따르세요.

  3. 해당 애플리케이션 내에 ClientID 및 클라이언트 시크릿을 생성하여 저장합니다.

  4. Power Apps 관리 센터로 이동하여 이전에 등록된 애플리케이션을 통해 액세스할 수 있도록 Dataverse 환경을 구성합니다. 이를 수행하기 위해 Manage » Environments`로 이동하여 구성할 환경을 선택합니다. 그런 다음 :extui:`Settings » Users & permissions » :extui:`Application users`로 이동합니다. 이전에 생성된 애플리케이션을 추가하고 Microsoft Dataverse에서 데이터를 읽을 수 있는 권한을 부여해야 합니다.

  5. Https://admin.powerplatform.microsoft.com/에서 선택한 Dataverse 환경의 환경 URL 을 복사본으로 저장합니다.

Snowflake 계정 설정하기

Snowflake 계정 관리자는 다음 작업을 수행합니다.

  1. 유형이 SERVICE 인 Snowflake 사용자를 생성합니다.

    복제된 데이터를 저장할 데이터베이스와 스키마를 생성하고, 서비스 사용자에게 USAGE 및 CREATE TABLE권한 을 부여하여 대상 스키마에 테이블을 생성할 수 있는 권한을 설정합니다.

    CREATE DATABASE <destination_database>;
    CREATE SCHEMA <destination_database>.<destination_schema>;
    CREATE USER <openflow_user> TYPE=SERVICE COMMENT='Service user for automated access of Openflow';
    CREATE ROLE <openflow_role>;
    GRANT ROLE <openflow_role> TO USER <openflow_user>;
    GRANT USAGE ON DATABASE <destination_database> TO ROLE <openflow_role>;
    GRANT USAGE ON SCHEMA <destination_database>.<destination_schema> TO ROLE <openflow_role>;
    GRANT CREATE TABLE ON SCHEMA <destination_database>.<destination_schema> TO ROLE <openflow_role>;
    CREATE WAREHOUSE <openflow_warehouse>
         WITH
             WAREHOUSE_SIZE = 'SMALL'
             AUTO_SUSPEND = 300
             AUTO_RESUME = TRUE;
    GRANT USAGE, OPERATE ON WAREHOUSE <openflow_warehouse> TO ROLE <openflow_role>;
    
    Copy
    1. 한 쌍의 보안 키(공개 및 비공개)를 생성합니다. 사용자의 개인 키를 파일에 저장하여 커넥터의 구성에 제공합니다. Snowflake 서비스 사용자에게 공개 키를 할당합니다.

      ALTER USER <openflow_user> SET RSA_PUBLIC_KEY = 'thekey';
      
      Copy

      자세한 내용은 키 페어 섹션을 참조하십시오.

  2. Snowflake는 이 단계를 강력히 권장합니다. Openflow에서 지원하는 시크릿 관리자(예: AWS, Azure, Hashicorp)를 구성하고 공개 및 개인 키를 시크릿 스토어에 저장합니다.

    참고

    어떤 이유로든 시크릿 관리자를 사용하지 않으려면 조직의 보안 정책에 따라 키 페어 인증에 사용되는 공개 키와 개인 키 파일을 보호할 책임이 있습니다.

    1. 시크릿 관리자가 구성되면 인증 방법을 결정합니다. AWS 에서는 다른 시크릿을 유지할 필요가 없으므로 Openflow와 연결된 EC2 인스턴스 역할을 사용하는 것이 좋습니다.

    2. Openflow에서 오른쪽 상단의 햄버거 메뉴에서 이 시크릿 관리자와 연결된 매개 변수 공급자를 구성합니다. Controller Settings » Parameter Provider 로 이동한 다음 매개 변수 값을 가져옵니다.

    3. 이 시점에서 모든 자격 증명은 연결된 매개 변수 경로로 참조할 수 있으며 민감한 값은 Openflow 내에서 유지될 필요가 없습니다.

  3. 다른 Snowflake 사용자가 커넥터에서 수집한 원시 수집 문서 및 테이블에 대한 액세스가 필요한 경우(예:Snowflake에서 사용자 정의 처리를 위해), 해당 사용자에게 1단계에서 생성한 역할을 부여하십시오.

  4. 커넥터가 사용할 웨어하우스를 지정합니다. 이전에 생성한 역할에 웨어하우스에 대한 USAGE 권한을 부여합니다. 가장 작은 데이터 웨어하우스 크기로 시작한 다음 복제되는 테이블 수와 전송되는 데이터의 양에 따라 크기를 실험해 보십시오. 테이블 수가 많은 경우 일반적으로 더 큰 규모의 웨어하우스보다는 멀티 클러스터 웨어하우스 에서 확장이 더 쉽습니다.

커넥터 설정하기

데이터 엔지니어는 다음 작업을 수행하여 커넥터를 설치하고 구성합니다.

커넥터 설치하기

  1. Openflow 개요 페이지로 이동합니다. Featured connectors 섹션에서 View more connectors 을 선택합니다.

  2. Openflow Connector 페이지에서 커넥터를 찾아 Add to runtime 을 선택합니다.

  3. Select runtime 대화 상자의 Available runtimes 드롭다운 목록에서 런타임을 선택합니다.

  4. Add 를 선택합니다.

    참고

    커넥터를 설치하기 전에 커넥터가 수집한 데이터를 저장할 수 있도록 Snowflake에서 데이터베이스와 스키마를 생성했는지 확인하십시오.

  5. Snowflake 계정 자격 증명으로 배포를 인증하고 런타임 애플리케이션이 Snowflake 계정에 액세스할 수 있도록 허용할지 묻는 메시지가 표시되면 Allow 를 선택합니다. 커넥터 설치 프로세스를 완료하는 데 몇 분 정도 걸립니다.

  6. Snowflake 계정 자격 증명으로 런타임에 인증합니다.

커넥터 프로세스 그룹이 추가된 Openflow 캔버스가 표시됩니다.

커넥터 구성

  1. 가져온 프로세스 그룹을 마우스 오른쪽 버튼으로 클릭하고 Parameters 를 선택합니다.

  2. 플로우 매개 변수 에 설명된 대로 필수 매개 변수 값을 채웁니다.

플로우 매개 변수

이 섹션에서는 다음 매개 변수 컨텍스트에 따라 구성할 수 있는 플로우 매개 변수에 대해 설명합니다.

Dataverse 소스 매개 변수

매개 변수

설명

출처 Dataverse 환경 URL

데이터를 가져올 소스 시스템의 기본 식별자입니다. URL 은 Dataverse 테이블이 존재하는 네임스페이스를 나타냅니다. 또한 OAuth 에 대한 범위 매개 변수를 생성할 수 있습니다.

소스 테넌트 ID

Microsoft Azure 테넌트 ID입니다. OAuth URLs을 생성하는 데 사용됩니다. Microsoft Dataverse 환경은 이 테넌트에 속해야 합니다.

소스 OAuth 클라이언트 ID

Microsoft Azure 클라이언트 ID는 Microsoft Dataverse API에 액세스하는 데 사용됩니다. `Microsoft Dataverse 웹 API<https://learn.microsoft.com/en-us/power-apps/developer/data-platform/webapi/overview>`_는 OAuth 인증을 사용하여 액세스를 보호하며, 커넥터는 클라이언트 자격 증명 흐름을 사용합니다. 클라이언트 ID 및 Microsoft Entra에서 이를 찾는 방법에 대한 자세한 내용은 `애플리케이션 ID(클라이언트 ID)<https://learn.microsoft.com/en-us/azure/healthcare-apis/register-application#application-id-client-id>`_를 참조하세요.

소스 OAuth 클라이언트 시크릿

Microsoft Azure 클라이언트 비밀은 Microsoft Dataverse API에 액세스하는 데 사용됩니다. `Microsoft Dataverse 웹 API<https://learn.microsoft.com/en-us/power-apps/developer/data-platform/webapi/overview>`_는 OAuth 인증을 사용하여 액세스를 보호하며, 커넥터는 클라이언트 자격 증명 흐름을 사용합니다. 클라이언트 비밀과 Microsoft Entra에서 이를 찾는 방법에 대한 자세한 내용은 `인증서 및 시크릿<https://learn.microsoft.com/en-us/azure/healthcare-apis/register-application#certificates–secrets>`_을 참조하세요.

Dataverse 대상 매개 변수

매개 변수

설명

필수

대상 데이터베이스

데이터가 유지될 데이터베이스입니다. Snowflake에 이미 존재해야 합니다. 이름은 대소문자를 구분합니다. 따옴표로 묶지 않은 식별자의 경우 이름을 대문자로 입력합니다.

대상 스키마

데이터가 유지될 스키마로, Snowflake에 이미 존재해야 합니다. 이름은 대소문자를 구분합니다. 따옴표로 묶지 않은 식별자의 경우 이름을 대문자로 입력합니다.

다음 예제를 참조하세요.

  • CREATE SCHEMA SCHEMA_NAME 또는 CREATE SCHEMA schema_name: SCHEMA_NAME 사용

  • CREATE SCHEMA "schema_name" 또는 CREATE SCHEMA "SCHEMA_NAME": 각각 schema_name 또는 SCHEMA_NAME 사용

Snowflake 계정 식별자

사용하는 경우:

  • Session Token Authentication Strategy: 비워 두어야 합니다.

  • KEY_PAIR: 데이터가 유지될 [organization-name]-[account-name] 형식의 Snowflake 계정 이름입니다.

Snowflake Authentication Strategy

사용하는 경우:

  • Snowflake Openflow Deployment: SNOWFLAKE_SESSION_TOKEN 을 사용합니다. 이 토큰은 Snowflake에서 자동으로 관리됩니다.

  • BYOC: KEY_PAIR를 인증 전략의 값으로 사용합니다.

Snowflake 개인 키

사용하는 경우:

  • Session Token Authentication Strategy: 비워 두어야 합니다.

  • KEY_PAIR: 인증에서 사용되는 RSA 개인 키여야 합니다.

    RSA 키는 PKCS8 표준에 따라 형식이 지정되어야 하며 표준 PEM 머리글 및 바닥글이 있어야 합니다. Snowflake Private Key File 또는 Snowflake Private Key를 정의해야 합니다.

아니요

Snowflake 개인 키 파일

사용하는 경우:

  • Session token authentication strategy: 개인 키 파일은 비워 두어야 합니다.

  • KEY_PAIR: PKCS8 표준에 따라 형식이 지정되고 표준 PEM 머리글과 바닥글을 포함하며 Snowflake 인증에 사용되는 RSA 개인 키를 포함하는 파일을 업로드합니다. 머리글 라인은 ``—–BEGIN PRIVATE``으로 시작합니다. 개인 키 파일을 업로드하려면 Reference asset 확인란을 선택합니다.

아니요

Snowflake 개인 키 비밀번호

사용하는 경우

  • Session Token Authentication Strategy: 비워 두어야 합니다.

  • KEY_PAIR: Snowflake 개인 키 파일과 연결된 비밀번호를 입력합니다.

아니요

Snowflake 역할

사용하는 경우

  • Session Token Authentication Strategy: 런타임 역할을 사용합니다. 런타임에 대한 :ui:`View Details`로 이동하여 Openflow UI에서 런타임 역할을 찾을 수 있습니다.

  • KEY_PAIR Authentication Strategy: 서비스 사용자에 대해 구성된 유효한 역할을 사용합니다.

Snowflake 사용자 이름

사용하는 경우

  • Session Token Authentication Strategy: 비워 두어야 합니다.

  • KEY_PAIR: Snowflake 인스턴스에 연결하는 데 사용되는 사용자 이름을 입력합니다.

Snowflake 웨어하우스

쿼리 실행에 사용되는 Snowflake 웨어하우스입니다.

Dataverse 수집 매개 변수

매개 변수

설명

예약 간격

프로세서가 테이블 목록을 가져오고 수집을 초기화하는 데 사용되는 트리거 간격입니다.

Source Tables Filter Strategy

수집할 테이블을 필터링하기 위한 전략입니다. REGEXP 및 LIST 중 하나 일 수 있습니다.

소스 테이블 필터 값

테이블 필터의 값입니다. 소스 테이블 필터 전략이 REGEXP 로 설정된 경우 - 선택한 테이블과 일치시킬 정규식입니다. LIST 가 제공되면 쉼표로 구분된 테이블 이름 목록입니다.

플로우 실행

  1. 평면을 마우스 오른쪽 버튼으로 클릭하고 Enable all Controller Services 를 선택합니다.

  2. 가져온 프로세스 그룹을 마우스 오른쪽 버튼으로 클릭하고 Start 를 선택합니다. 커넥터가 데이터 수집을 시작합니다.