Snowflake Data Clean Rooms: 관리자 작업

이 항목에서는 |samooha-clean-room|의 관리자가 수행할 수 있는 작업에 대해 설명합니다. Snowflake 계정에 클린룸 환경을 설치하는 방법에 대한 자세한 내용은 Snowflake Data Clean Rooms 환경 설치하기 섹션을 참조하세요.

클린룸 환경 업데이트

Snowflake Data Clean Rooms는 매주 바이너리를 업데이트하여 새로운 기능, 프로시저, UI 업데이트를 지원합니다. Snowflake 릴리스 정보 페이지의 :ref:`기능 업데이트 섹션<label-new_features_features>`에서 중요한 새 릴리스에 대한 릴리스 정보를 찾을 수 있습니다(“클린룸” 검색).

클린룸 UI 업데이트

클린룸 UI 환경은 Snowflake에 의해 자동으로 업데이트됩니다. 업데이트된 버전을 사용하려면 사용자는 로그아웃한 후 클린룸 UI에 다시 로그인하기만 하면 됩니다.

클린룸 API 업데이트

클린룸 관리자는 자동 API 업데이트를 활성화하거나(권장) 다음에 설명된 대로 각 새 릴리스에 대해 API 환경을 수동으로 업데이트할 수 있습니다.

자동 API 업데이트

클린룸 API 관리자는 해당 계정에서 다음 SQL 명령을 한 번 실행하여 릴리스 시 클린룸 업데이트가 자동으로 설치되도록 할 수 있습니다.

USE ROLE SAMOOHA_APP_ROLE;
CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.library.enable_local_db_auto_upgrades();
Copy

해당 계정의 클린룸 API 사용자는 로그아웃할 필요 없이 업데이트가 롤아웃되는 즉시 업데이트를 볼 수 있습니다.

수동 API 업데이트

계정에 대해 자동 클린룸 업데이트를 활성화하는 것이 좋습니다. 하지만 계정의 API 환경을 수동으로 업데이트하려는 경우 환경을 업데이트할 때마다 다음 SQL 명령을 실행하여 업데이트할 수 있습니다.

USE ROLE SAMOOHA_APP_ROLE;
CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.library.apply_patch();
Copy

다음을 SQL 명령을 실행하여 릴리스 번호를 찾을 수 있습니다.

SELECT * FROM SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.ADMIN.VERSION;
Copy

다른 웨어하우스 사용

클린룸에는 API에 액세스할 수 있는 여러 웨어하우스)을 위한 사용자 지정 웨어하우스 크기를 선택할 수도 있습니다.

그러나 해당 웨어하우스에 대해 SAMOOHA_APP_ROLE 역할에 USAGE 및 OPERATE 권한을 부여하는 경우 클린룸에서 선택한 모든 웨어하우스를 사용할 수 있습니다.

예를 들어, 분석 실행에 사용할 수 있는 웨어하우스 my_big_warehouse 를 추가하려면 워크시트에서 다음 명령을 실행합니다.

USE ROLE ACCOUNTADMIN;

CREATE WAREHOUSE my_big_warehouse WITH WAREHOUSE_SIZE = X5LARGE;
GRANT USAGE, OPERATE ON WAREHOUSE my_big_warehouse TO ROLE SAMOOHA_APP_ROLE;
Copy

클린룸 UI 활동 모니터링

관리자는 Snowflake 계정에서 쿼리 기록을 모니터링하여 클린룸 UI에서 사용자가 수행하는 작업을 추적할 수 있습니다. :code:`user_name`의 값은 :ref:`Snowflake 계정이 구성<label-dcr_install_clean_rooms_ui_step>`될 때 생성된 서비스 사용자의 이름이므로 클린룸 UI의 활동에 해당하는 쿼리 기록 항목을 식별할 수 있습니다.

user_email 쿼리 태그를 사용하여 어떤 클린룸 사용자가 어떤 작업을 수행했는지 파악할 수 있습니다

클린룸 환경에 대한 쿼리 기록에 액세스하려면 SQL 또는 Snowsight 사용 여부에 따라 다음 중 하나를 수행합니다.

Snowsight:
  1. 클린룸 환경과 연결된 Snowflake 계정에 ACCOUNTADMIN 역할이 있는 사용자로 로그인합니다.

  2. 탐색 메뉴에서 Monitoring » Query History 를 선택합니다.

  3. User 필터를 사용하여 클린룸 환경과 연결된 서비스 계정 사용자를 선택합니다.

SQL:
  • 공유 SNOWFLAKE 데이터베이스의 ACCOUNT_USAGE 스키마에서 QUERY_HISTORY 뷰 에 대한 쿼리를 실행합니다.

    예를 들어, 사용자 ``joe@example.com``의 클린룸 UI 활동을 추적하려면 다음 코드를 실행합니다.

    SELECT *,
      TRY_PARSE_JSON(query_tag) AS query_tag_details
      FROM snowflake.account_usage.query_history
      WHERE query_tag_details IS NOT NULL
        AND query_tag_details:request_type = 'DCR'
        AND query_tag_details:user_email = 'joe@example.com';
    
    Copy

공급자 실행 분석 모니터링하기

공급자 실행 분석은 공급자가 클린룸을 생성하고 공유한 다음, 컨슈머가 데이터를 연결한 후 클린룸에서 분석을 실행하는 프로세스를 말합니다. 이러한 분석은 공급자의 계정이 아닌 컨슈머의 계정에서 실행됩니다. 이 섹션에서는 컨슈머가 클린룸에서 공급자의 분석에 의해 실행된 쿼리를 추적할 수 있는 방법에 대해 설명합니다.

Snowflake Data Clean Rooms 는 공급자 실행 분석을 위해 실행되는 각 쿼리에 쿼리 태그를 할당합니다. 이 쿼리 태그의 형식은 cleanroom_UUID_provider_account_locator 입니다. 컨슈머는 계정의 쿼리 기록에서 쿼리 태그를 검색하여 공급자가 운영하는 분석과 관련된 모든 쿼리를 검색할 수 있습니다.

쿼리를 검색하려면 먼저 클린룸에 대한 UUID를 얻은 다음 쿼리 태그를 검색합니다. 다음 코드에서 cleanroom_nameprovider_account_locator 를 적절한 값으로 바꿉니다.

-- Retrieve clean room UUID
SELECT cleanroom_id FROM samooha_by_snowflake_local_db.public.cleanroom_record
  WHERE cleanroom_name = '<cleanroom_name>';

-- Retrieve queries with provider-run query tag
SELECT * FROM snowflake.account_usage.query_history
  WHERE query_tag = cleanroom_id || '<provider_account_locator>;
Copy

SQL을 사용하여 클린룸 UUID를 검색한 다음 Snowsight 를 사용하여 적절한 쿼리 태그를 기준으로 쿼리 기록을 필터링할 수도 있습니다.

사용 가능한 커넥터 사용자 지정

커넥터를 사용하면 클린룸 환경을 에코시스템 파트너와 통합할 수 있습니다. 공급자의 클린룸 관리자는 클린룸 환경을 사용자 지정하여 클린룸 사용자에게 옵션으로 표시되는 커넥터를 제한할 수 있습니다. 예를 들어, 선호하는 활성화 파트너가 한 명인 경우, 컨슈머가 클린룸에서 분석 결과를 활성화할 때 해당 파트너가 유일한 옵션이 되도록 클린룸 환경을 구성할 수 있습니다.

참고

사용자가 지정한 사항은 새 클린룸에만 적용됩니다.

Clean Room에서 어떤 커넥터를 사용할 수 있는지 제어하려면 MANAGE_DCR_CONNECTORS 역할이 필요합니다.

  1. :ref:`클린룸 UI<label-cleanroom_web_app_sign_in>`에 로그인합니다.

  2. 왼쪽 탐색 모음에서 Admin » Profile & Features 를 선택합니다.

  3. 선택 사항: 활성화 커넥터를 사용자 지정하려면 다음 단계를 따르십시오.

    1. Activation 타일에서 Edit 를 선택합니다.

    2. 표시할 활성화 옵션을 선택한 다음 Save 를 선택합니다.

  4. 선택 사항: ID 및 데이터 공급자 커넥터를 사용자 지정하려면 다음 단계를 따르십시오.

    1. Identity & Data Provider 타일에서 Edit 를 선택합니다.

    2. 표시할 ID 옵션을 선택한 다음 Save 를 선택합니다.

클린룸에 브랜드 설정

클린룸 환경에 적합한 프로필을 구성하여 생성된 모든 클린룸에 로고와 회사 이름이 표시되도록 할 수 있습니다. 회사의 로고와 이름을 정의하려면 MANAGE_DCR_PROFILE_AND_FEATURES 역할이 필요합니다.

  1. :ref:`클린룸 UI<label-cleanroom_web_app_sign_in>`에 로그인합니다.

  2. 왼쪽 탐색 모음에서 Admin » Profile & Features 를 선택합니다.

  3. Company profile 에서 다음을 수행합니다.

    1. JPG 또는 PNG 형식의 회사 로고를 업로드합니다. 이 로고는 생성된 모든 클린룸에 표시됩니다.

    2. Company Name 을 편집하여 환경에 생성된 클린룸에 표시할 이름을 정의합니다.

Single Sign-On(SSO) 활성화

SSO(Single Sign-On)를 활성화하려면 `Snowflake 지원 팀`_에 문의하세요. 계정에서 Snowflake 인증을 사용하여 SSO를 활성화해야 합니다. 이 인증을 아직 사용하지 않은 경우 SSO를 요청하기 전에 :doc:`Snowflake 인증으로 마이그레이션</user-guide/cleanrooms/update-to-oauth>`하세요.

키 페어 인증 허용

클린룸 환경의 서비스 계정 사용자가 Snowflake 계정과 통신할 때 사용하는 서비스 계정 사용자는 키 페어 인증 을 사용하여 인증합니다. Snowflake 계정에서 인증 정책 을 사용하여 사용자의 인증 방법을 제어하는 경우 서비스 계정 사용자를 제어하는 인증 정책에서 키 페어 인증을 허용해야 합니다.

키 페어 인증을 허용하려면 모든 인증 정책을 제거하거나 AUTHENTICATION_METHODS = ALL 또는 AUTHENTICATION_METHODS = KEYPAIR 로 인증 정책을 추가합니다. Snowflake 계정에 키 페어 인증을 허용하지 않는 계정 수준 인증 정책이 있는 경우, 적절한 매개 변수를 사용해 새 인증 정책을 만든 다음, 설치 과정 중에 만든 서비스 계정 사용자에게 정책을 할당해야 합니다.

이 명령을 실행하여 인증 정책을 확인할 수 있습니다.

SHOW AUTHENTICATION POLICIES;
Copy

결과 테이블이 비어 있으면 정책이 없음을 나타내며, 이는 키 페어 인증이 허용됨을 의미합니다.

서비스 사용자 관리

클린룸 UI는 서비스 사용자 계정을 중개자로 사용하여 대부분의 클린룸 작업을 수행합니다. 이 섹션에 설명된 대로 클린룸 UI를 사용하여 클린룸 서비스 사용자를 생성하거나 계정에 추가한 후 키를 수정하거나 클린룸 서비스 사용자를 전환할 수 있습니다.

중요

클린룸 서비스 사용자는 반드시 클린룸 UI를 사용하여 변경합니다. UI 외부에서 서비스 사용자를 수정하는 경우 클린룸은 더 이상 서비스 사용자에 액세스하지 못할 수 있습니다.

서비스 사용자 변경

서비스 사용자 이름을 변경하거나 새 서비스 사용자(기본적으로 동일한 사용자)를 사용하려는 경우:

  1. Snowflake Admin » :ui:`Service User Management`를 열고 |edit-pencil|(편집)을 선택합니다.

  2. 서비스 사용자의 이름을 현재 계정에서 액세스할 수 있는 :ref:`생성<label-dcr_create_service_user_manually>`한 사용자로 변경합니다.

  3. :ui:`Reauthenticate`를 선택하여 확인 대화 상자를 엽니다.

  4. 대화 상자의 정보를 읽은 다음, :ui:`Confirm`을 선택하여 해당 에이전트 사용을 시작합니다.

서비스 사용자 키 변경

서비스 사용자를 변경하려는 경우 RSA 키를 사용하려면 다음에 설명된 대로 수행해야 합니다. 클린룸 환경 외부에서 키를 변경하면 다음에 설명된 대로 서비스 사용자 키를 다시 변경할 때까지 더 이상 대부분의 UI 기능을 사용할 수 없게 됩니다.

  1. Snowflake Admin » :ui:`Service User Management`를 열고 |edit-pencil|(편집)을 선택합니다.

  2. 수동 설정 섹션 근처의 :ui:`Reauthenticate`를 선택하여 확인 대화 상자를 엽니다.

  3. 대화 상자의 정보를 읽은 다음, :ui:`Confirm`을 선택하여 새 RSA 키를 생성합니다.

다음 SQL 명령을 실행하고 표시된 서비스 사용자 이름을 대체하여 서비스 에이전트의 공개 키에 대한 정보를 볼 수 있습니다.

DESCRIBE USER <service_user_name> ->>
  SELECT *
    FROM $1
      WHERE "property" ILIKE 'RSA_PUBLIC_KEY%';
Copy

클린룸은 :ref:`RSA_PUBLIC_KEY_2<label-key_pair_rotation>`를 사용한 키 순환을 지원하지 않으므로 RSA_PUBLIC_KEY_2에 대한 정보는 무시하세요.

Clean Room UI 에서 활성화 설정 또는 해제하기

Clean Room UI 사용 시 활성화는 Clean Room 관리자가 전체적으로 제어합니다. Clean Room API 에서의 활성화는 공급자가 Clean Room 수준에서 제어합니다.

이 섹션에서는 Clean Room UI 를 사용할 때 활성화를 설정하거나 해제하는 방법을 보여줍니다. API 를 사용할 때 활성화를 설정하는 방법을 알아보려면 활성화 지침 을 참조하십시오.

Clean Room UI 를 사용할 때 Clean Room 계정에서 공급자 및 컨슈머 활성화가 기본적으로 설정됩니다. 서드 파티 활성화는 수동으로 설정해야 합니다.

계정에서 UI 사용자의 활성화를 설정하거나 해제하는 방법은 다음과 같습니다.

  1. :ref:`클린룸 UI<label-cleanroom_web_app_sign_in>`의 클린룸 환경에 DCR 관리자로 로그인합니다.

  2. Admin » Profile & Features 를 선택합니다.

  3. Activation 섹션에서 Edit 을 선택합니다.

    • 컨슈머 활성화 를 관리하는 방법: Collaborator Account 옆의 확인란을 선택하거나 선택 취소합니다.

    • 공급자 활성화 를 관리하는 방법: 자신의 계정 이름 옆에 있는 확인란을 선택하거나 선택 취소합니다.

    • 서드 파티 활성화 를 관리하는 방법: 설정하거나 해제하려는 서드 파티 활성화 대상 옆의 확인란을 선택하거나 선택 취소합니다. 서드 파티 활성화는 커넥터를 통해 설정되며 Clean Room UI 에서만 사용 가능합니다. 사용 가능한 서드 파티 커넥터 목록을 참조하십시오.

Clean Room에서 활성화를 구현하는 방법을 알아보십시오.

네트워크 정책 구성하기

Snowflake 계정에서 :doc:`네트워크 정책</user-guide/network-policies>`을 사용하여 네트워크 트래픽을 제어하는 경우 클린룸 UI가 내 Snowflake 계정과 통신하는 데 사용하는 IP 주소의 트래픽을 명시적으로 허용해야 합니다.

Find the IP addresses used for your region in the IP network addresses used by clean rooms UI column in the IP address table.

이 환경의 서비스 계정에 대한 세부 정보 보기

클린룸 UI는 서비스 계정을 사용하여 Snowflake와 통신합니다. 이 서비스 계정은 계정 관리자가 이 계정에 클린룸 환경을 설치할 때 생성한 것입니다.

서비스 계정 사용자에 대한 세부 정보는 수정할 수 없습니다.

이 Clean Room 환경에 대한 서비스 계정에 대한 자세한 내용을 보려면 MANAGE_DCR_PROFILE_AND_FEATURES 역할이 필요합니다.

  1. Snowflake Data Clean Rooms 로그인 페이지 로 이동합니다.

  2. Admin > Snowflake Admin 으로 이동합니다.

  3. Snowflake Admin 페이지에서 서비스 사용자 이름과 서비스 사용자 이메일 등의 정보를 확인할 수 있습니다.