Openflow Connector for Workday 설정
Openflow Connector for Workday 설정
이 페이지에서는 Workday용 Openflow Connector를 설정하는 전체 절차를 설명해요. Workday 쪽 준비(RaaS ISU 생성, RaaS 보고서 생성), Snowflake 계정 준비, 커넥터 설치·구성까지 차례로 다룹니다.
출처: Snowflake 문서
본문
Note
이 커넥터는 Snowflake Connector Terms에 의해 규율됩니다.
이 토픽은 Workday용 Openflow Connector를 설정하는 단계를 설명합니다.
전제 조건
-
런타임 배포를 설정하세요.
-
Openflow - Snowflake Deployments를 사용한다면 required domains 구성을 검토하고 Workday 커넥터에 필요한 도메인 접근을 부여했는지 확인하세요. Openflow - BYOC Deployments를 사용한다면 Workday 계정 호스트(예:
mycompany.workday.com:443)로 TLS 443 접근을 허용하도록 클라우드 네트워크 이그레스를 구성하세요. -
Openflow 관리자 역할 또는 Openflow 관리에 사용하는 유사한 역할에 접근할 수 있는지 확인하세요.
-
Workday RaaS 통합 시스템 사용자(ISU)를 생성합니다.
Openflow - BYOC Deployments에 배포하고 KEY_PAIR 인증 전략을 사용한다면 키 페어 인증을 만들었는지 확인하세요. 자세한 내용은 key pair authentication을 참고하세요.
Workday 설정
Workday 커넥터를 설정하려면 Workday에서 다음 작업을 완료하세요:
-
커넥터용 RaaS 통합 시스템 사용자(ISU)를 생성합니다.
-
Workday에서 Create Integration System User로 이동해 다음 정보로 사용자를 생성합니다:
-
User Name:
RaaS -
Session Timeout Minutes: 기본값(
480)을 둡니다.
-
-
Session Timeout Minutes을
480(8시간) 이하로 설정합니다. 커넥터는 기본값을 기대합니다. -
ISU에 다음 보안 그룹을 부여합니다(Manage Permissions for Integration System User 작업에서):
-
Integration System User - Update Only
-
Integration System User (RaaS)
-
Integration System User - RaaS BIRT (해당되는 경우)
-
-
대상 RaaS 보고서에 대한 외부 계정 인가가 있는 보안 그룹 권한 정책을 ISU에 할당합니다.
-
RaaS 보안 설명자를 허용하도록 보안 항목(secured items)이 있는
RaaS_Report_Data_View보안 그룹을 ISU에 부여합니다. -
사용자가
ws-security통합을 통해 Workday에 연결할 수 있도록 Workday 계정을 구성합니다. -
RaaS 보고 데이터 소스를 만들고 RaaS 보고서를 생성합니다.
-
Workday에서 Create Reporting Data Source로 이동해 다음을 선택합니다:
-
Data Source Type:
Advanced -
Operation:
RaaS
-
-
RaaS 데이터 소스에 대해 보고서와 출력 옵션을 정의합니다:
-
Report Name: 보고서 이름 제공
-
Output:
JSON
-
-
OK를 선택합니다.
-
RaaS 보고서를 실행해 보고서 출력을 생성합니다(보고서 실행에는 사용자 자격 증명이 필요합니다).
-
다음 정보로 사용자를 만들고 비밀번호를 기록합니다:
-
Name:
workday_user -
Password: (나중에 사용하기 위해 기록)
Snowflake 계정 설정
Openflow 관리자로 다음 작업을 수행해 Snowflake 계정을 설정하세요. 기본 SNOWFLAKE_MANAGED 인증 전략에서는 런타임의 execute-as 역할이 커넥터가 Snowflake에 접근할 때 사용하는 신원이므로, 그 역할에 다음 권한을 부여합니다.
Note
Openflow - BYOC Deployments에 커넥터를 배포하고 권장되는 SNOWFLAKE_MANAGED 대신 KEY_PAIR 인증 전략을 사용한다면, 런타임의 관리 토큰에 의존하는 대신 이 동일한 execute-as 역할을 서비스 사용자에게 부여하게 됩니다. 서비스 사용자 생성은 Set up key-pair authentication for Openflow - BYOC Deployments를 참고하세요.
데이터베이스, 스키마, 웨어하우스 생성
- 대상 데이터베이스를 생성합니다:
USE ROLE OPENFLOW_ADMIN;
CREATE DATABASE IF NOT EXISTS <destination_database>;
- 대상 스키마를 생성합니다:
CREATE SCHEMA IF NOT EXISTS <destination_database>.<destination_schema>;
- 런타임의 execute-as 역할에 필요한 권한을 부여합니다:
GRANT USAGE ON DATABASE <destination_database> TO ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL;
GRANT USAGE ON SCHEMA <destination_database>.<destination_schema> TO ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL;
GRANT CREATE TABLE ON SCHEMA <destination_database>.<destination_schema> TO ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL;
- 웨어하우스를 생성(또는 기존 웨어하우스 사용)하고 사용 권한을 부여합니다:
CREATE WAREHOUSE IF NOT EXISTS <openflow_warehouse>
WITH
WAREHOUSE_SIZE = 'XSMALL'
AUTO_SUSPEND = 300
AUTO_RESUME = TRUE;
GRANT USAGE, OPERATE ON WAREHOUSE <openflow_warehouse> TO ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL;
커넥터 설치
데이터 엔지니어로 커넥터를 설치하려면 다음을 수행하세요:
-
Openflow의 Connector library 탭으로 이동합니다.
-
Openflow 커넥터 페이지에서 커넥터를 찾아 Install을 선택합니다.
-
Select runtime 대화상자에서 Available runtimes 드롭다운 목록에서 런타임을 선택하고 Install을 클릭합니다.
Note
커넥터를 설치하기 전에 커넥터가 수집한 데이터를 저장할 데이터베이스와 스키마를 Snowflake에 만들었는지 확인하세요.
-
Snowflake 계정 자격 증명으로 배포에 인증하고, 런타임 앱이 Snowflake 계정에 접근하도록 허용하라는 메시지가 나오면 Allow를 선택합니다. 커넥터 설치 과정은 완료하는 데 몇 분 정도 걸립니다.
-
Snowflake 계정 자격 증명으로 런타임에 인증합니다.
Openflow 캔버스에 커넥터 프로세스 그룹이 추가됩니다.
커넥터 구성
커넥터를 구성하려면 다음 단계를 수행하세요:
-
추가된 커넥터 프로세스 그룹을 우클릭하고 Parameters를 선택합니다.
-
아래 섹션에 설명된 대로 필수 파라미터 값을 채웁니다.
Workday RaaS 파라미터
| Parameter | Description |
|---|---|
| RaaS Base URL | Workday RaaS 엔드포인트의 Base URL. 예: https://mycompany-myimpl.workday.com/ccx/service/customreport2/MyCompany/RaaS_Report |
| RaaS Username | Workday 통합 시스템 사용자 이름. |
| RaaS Password | RaaS 인증용 Workday 통합 시스템 사용자 비밀번호. 민감 파라미터로 안전하게 저장됩니다. |
| RaaS ISU API Version | Workday 환경의 API 버전. |
| RaaS Report Name | RaaS 보고서 이름. |
| RaaS Report Format | RaaS 보고서 형식. |
| RaaS Limit Per Page | RaaS 페이지당 레코드 수(페이지네이션). |
| RaaS JSON Path | RaaS 응답에서 JSON을 파싱하는 데 사용하는 JSONPath 표현식. |
| RaaS Pagination Strategy | RaaS 페이지네이션 전략. |
| RaaS Polling Interval | RaaS 폴링 간격(분 단위). |
| RaaS URL Query Parameters Package | RaaS URL 쿼리 파라미터 패키지. |
| RaaS Start Date | RaaS 날짜 범위 시작 날짜. |
| RaaS End Date | RaaS 날짜 범위 종료 날짜. |
| RaaS Date Format | RaaS 날짜 형식. |
| RaaS Timezone | RaaS 시간대. |
Snowflake 대상 파라미터
| Parameter | Description |
|---|---|
| Snowflake Authentication Strategy | 커넥터가 Snowflake에 연결할 때 사용하는 인증 전략. |
| SNOWFLAKE_MANAGED (기본): 런타임의 execute-as 역할과 연결된 Snowflake 관리 토큰 사용. Openflow - Snowflake Deployments와 Openflow - BYOC Deployments 모두에서 권장되는 전략. | |
| KEY_PAIR: 사용자가 제공한 RSA 키 페어 사용. 교차 계정 시나리오를 위해 Openflow - BYOC Deployments에서만 사용 가능. | |
| Snowflake Account | <organization>-<account> 형식의 Snowflake 계정 식별자. 인증 전략이 KEY_PAIR일 때 필요. 예: MYORG-MYACCOUNT |
| Snowflake Username | 인증에 사용할 Snowflake 사용자. 인증 전략이 KEY_PAIR일 때 필요. |
| Snowflake Private Key | Snowflake 키 페어 인증용 PEM 인코딩 개인 키 콘텐츠. 인증 전략이 KEY_PAIR일 때 필요. |
| Snowflake Private Key Password | 개인 키가 암호화된 경우 복호화할 비밀번호. 인증 전략이 KEY_PAIR일 때만 적용됩니다. |
| Snowflake Role | 테이블 생성, 데이터 수집, 접근 검증에 사용되는 역할. |
| Snowflake Database | Snowflake의 대상 데이터베이스 이름. 커넥터를 시작하기 전에 데이터베이스가 이미 존재해야 합니다. |
| Snowflake Warehouse | CREATE TABLE·MERGE 같은 테이블 관리 작업에 사용되는 Snowflake 웨어하우스. |
플로우 실행
-
캔버스의 빈 영역을 우클릭하고 Enable all Controller Services를 선택합니다.
-
커넥터 프로세스 그룹을 우클릭하고 Start를 선택합니다.
커넥터가 Workday RaaS API를 조회하고 Snowflake에 데이터를 로드하기 시작합니다.