CREATE ORGANIZATION LISTING¶
Crie uma listagem organizacional para compartilhar produtos de dados com segurança em sua organização.
Sintaxe¶
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 } ]
Parâmetros¶
name
Especifica o identificador (nome) da listagem. Ele deve estar em conformidade com o seguinte:
Deve ser exclusivo em uma conta, independentemente da Snowflake Region em que a conta está localizada. O Localizador uniforme de listagens (ULL) deve ser exclusivo dentro de uma organização.
Não pode conter sinais de dólar incorporados.
Deve estar em conformidade com os requisitos de identificador do Snowflake. Consulte Requisitos para identificadores.
FROM 'yaml_manifest_stage_location'
Especifica o caminho para o arquivo manifest.yml do estágio interno ou do clone do repositório Git.
SHARE share_name
Especifica o identificador do compartilhamento a ser anexado à listagem.
APPLICATION PACKAGE package_name
Especifica o pacote do aplicativo anexado à listagem.
Consulte também SHOW APPLICATION PACKAGES.
AS 'yaml_manifest_string'
O manifesto YAML para o perfil da organização. Para obter detalhes e exemplos de campos de manifesto, consulte Referência do manifesto da listagem da organização.
Os manifestos normalmente são fornecidos como strings entre cifrões. Para obter mais informações, consulte Constantes de cadeias de caracteres entre cifrões.
PUBLISH = { TRUE | FALSE }
Especifica como publicar a listagem.
Se TRUE, a listagem é publicada no Marketplace Interno imediatamente.
Padrão: TRUE.
Requisitos de controle de acesso¶
A função usada para executar essa operação deve ter, no mínimo, os seguintes privilégios:
Privilégio |
Objeto |
Notas |
---|---|---|
CREATE ORGANIZATION LISTING ou CREATE LISTING |
Conta |
Para criar e alterar listagens organizacionais. |
Uma função usada para executar esse comando SQL deve ter pelo menos um dos seguintes privilégios, no mínimo:
Privilégio |
Objeto |
Notas |
---|---|---|
CREATE ORGANIZATION LISTING |
ACCOUNT |
Para anexar a ação especificada ou o Snowflake Native App Framework especificado a uma listagem. Ao especificar um Snowflake Native App Framework, OWNERSHIP ou ATTACH LISTING também são necessários. |
IMPORT ORGANIZATION LISTING |
ACCOUNT |
Para montar uma listagem ou executar uma consulta que usa um Uniform Listing Locator (ULL) para fazer referência a uma listagem organizacional. |
Notas de uso¶
Listagens criadas usando CREATE ORGANIZATION LISTING … são publicadas automaticamente.
Exemplos¶
Este exemplo cria uma listagem chamada MYORGLISTING usando as configurações especificadas no manifesto YAML. Ele visa a uma função em uma conta em uma região e inclui contatos de suporte e aprovação.
Nota
support_contact
é obrigatório. approver_contact
é obrigatório se for fornecido um destino 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>"
$$
Cria um rascunho de listagem chamado ‘MYLISTING’ em um local específico do estágio. No exemplo a seguir, o arquivo manifest.yml
está localizado na pasta listingmanifests
no estágio denominado listingstage
.
CREATE ORGANIZATION LISTING MYLISTING
SHARE MySHARE FROM @dbforstage.public.listingstage/listingmanifests;