CREATE ORGANIZATION LISTING¶
조직 목록을 만들어 조직 내에서 데이터 제품을 안전하게 공유하십시오.
구문¶
CREATE ORGANIZATION LISTING [ IF NOT EXISTS ] <name>
  [ { SHARE <share_name>  |  APPLICATION PACKAGE <package_name> } ]
  AS '<yaml_manifest_string>'
  [ PUBLISH = { TRUE | FALSE } ]
CREATE ORGANIZATION LISTING [ IF NOT EXISTS ] <name>
  [ { SHARE <share_name>  |  APPLICATION PACKAGE <package_name> } ]
  FROM '<yaml_manifest_stage_location>'
  [ PUBLISH = { TRUE | FALSE } ]
매개 변수¶
- name
- 목록의 식별자(이름)를 지정합니다. 식별자는 다음을 준수해야 합니다. - 계정이 위치한 Snowflake Region에 관계없이 계정 내에서 고유해야 합니다. Uniform Listing Locator(ULL)는 조직 내에서 고유해야 합니다. 
- 임베디드 달러 기호를 포함할 수 없습니다. 
- Snowflake 식별자 요구 사항을 준수해야 합니다. 식별자 요구 사항 섹션을 참조하십시오. 
 
- FROM 'yaml_manifest_stage_location'
- 내부 스테이지 또는 Git 리포지토리 복제본 manifest.yml 파일의 경로를 지정합니다. 
- SHARE share_name
- 목록에 첨부할 공유의 식별자를 지정합니다. 
- APPLICATION PACKAGE package_name
- 목록에 첨부된 애플리케이션 패키지를 지정합니다. - SHOW APPLICATION PACKAGES 도 참조하십시오. 
- AS 'yaml_manifest_string'
- 조직 프로필에 대한 YAML 매니페스트입니다. 매니페스트 필드 세부 정보와 예제는 조직 목록 매니페스트 참조 섹션을 참조하세요. - 매니페스트는 일반적으로 달러 기호로 묶인 문자열로 제공됩니다. 자세한 내용은 달러 기호로 묶인 문자열 상수 섹션을 참조하세요. 
- PUBLISH = { TRUE | FALSE }
- 목록을 게시하는 방법을 지정합니다. - TRUE 인 경우 목록이 내부 마켓플레이스에 즉시 게시됩니다. - 기본값: TRUE. 
액세스 제어 요구 사항¶
이 작업을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.
| 권한 | 오브젝트 | 참고 | 
|---|---|---|
| CREATE ORGANIZATION LISTING 또는 CREATE LISTING | 계정 | 조직 목록을 만들고 변경하려면 다음을 수행합니다. | 
이 SQL 명령을 실행하는 데 사용되는 역할 에는 다음 권한 중 최소한 하나 이상 이 있어야 합니다.
| 권한 | 오브젝트 | 참고 | 
|---|---|---|
| CREATE ORGANIZATION LISTING | ACCOUNT | 지정한 공유 또는 지정한 Snowflake Native App Framework 를 목록에 첨부하는 권한. Snowflake Native App Framework 를 지정하는 경우 OWNERSHIP 또는 ATTACH LISTING 도 필요합니다. | 
| IMPORT ORGANIZATION LISTING | ACCOUNT | 목록을 탑재하거나 ULL (Uniform Listing Locator)을 사용하여 조직 목록을 참조하는 쿼리를 실행하는 권한. | 
사용법 노트¶
- CREATE ORGANIZATION LISTING …을 사용하여 생성된 목록은 자동으로 게시됩니다. 
예¶
이 예제에서는 매니페스트 YAML 에 지정된 설정을 사용하여 MYORGLISTING 이라는 이름의 목록을 만듭니다. 여기에는 한 리전의 한 계정에서 하나의 역할을 대상으로 하며 지원 및 승인자 연락처가 포함됩니다.
참고
support_contact 는 필수입니다. approver_contact 는 discovery 대상이 제공되는 경우에 필수입니다.
USE ROLE <organization_listing_role>;
CREATE ORGANIZATION LISTING MYORGLISTING
SHARE <share_name> AS
$$
title: "My title"
description: "One region, all accounts"
organization_profile: "INTERNAL"
organization_targets:
  discovery:
    - account: "<account_name>"
      roles:
        - "<role>"
  access:
    - account: "<account_name>"
      roles:
        - "<role>"
support_contact: "support@somedomain.com"
approver_contact: "approver@somedomain.com"
locations:
   access_regions:
   - name: "PUBLIC.<snowflake_region>"
$$
특정 스테이지 위치에서 ‘MYLISTING’이라는 초안 목록을 만듭니다. 다음 예제에서 manifest.yml 파일은 listingstage 라는 스테이지의 listingmanifests 폴더에 있습니다.
CREATE ORGANIZATION LISTING MYLISTING
SHARE MySHARE FROM @dbforstage.public.listingstage/listingmanifests;