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 コマンドの実行に使用される ロール には、 最低 1 つ の次の 権限 が必要です。
| 権限 | オブジェクト | 注意 | 
|---|---|---|
| CREATE ORGANIZATION LISTING | ACCOUNT | 指定したシェアまたは指定した Snowflake Native App Framework をリストに添付します。Snowflake Native App Framework を指定する場合は、 OWNERSHIP または ATTACH LISTING も必要です。 | 
| IMPORT ORGANIZATION LISTING | ACCOUNT | リストをマウントする、または組織のリストを参照するために統一リストロケーター(ULL)を使用するクエリを実行します。 | 
使用上の注意¶
- CREATE ORGANIZATION LISTING... を使用して作成されたリストは、自動的に公開されます。 
例¶
この例では、マニフェスト YAML で指定されたセットを使用して、 MYORGLISTING という名前のリストを作成します。1リージョンの1アカウントの1ロールをターゲットとし、サポートと承認者の連絡先を含みます。
注釈
support_contact は必須です。discovery ターゲットがプロバイダーの場合、 approver_contact は必須です。
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;