CREATE PACKAGES POLICY¶
Cria uma nova política de pacotes ou substitui uma política de pacote existente.
Depois de criar uma política de pacotes, aplique-a à sua conta Snowflake usando uma instrução ALTER ACCOUNT.
Sintaxe¶
CREATE [ OR REPLACE ] PACKAGES POLICY [ IF NOT EXISTS ] <name>
LANGUAGE PYTHON
[ ALLOWLIST = ( [ '<packageSpec>' ] [ , '<packageSpec>' ... ] ) ]
[ BLOCKLIST = ( [ '<packageSpec>' ] [ , '<packageSpec>' ... ] ) ]
[ ADDITIONAL_CREATION_BLOCKLIST = ( [ '<packageSpec>' ] [ , '<packageSpec>' ... ] ) ]
[ COMMENT = '<string_literal>' ]
Parâmetros obrigatórios¶
name
Especifica o identificador (ou seja, nome) para a política de pacotes; deve ser único para o esquema no qual a política de pacotes é criada.
Além disso, o identificador deve começar com um caractere alfabético e não pode conter espaços ou caracteres especiais, a menos que toda a cadeia de caracteres do identificador esteja entre aspas duplas (por exemplo,
"My object"
). Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.Para obter mais informações, consulte Requisitos para identificadores.
LANGUAGE PYTHON
Especifica linguagem que essa política de pacotes aplicará.
Parâmetros opcionais¶
ALLOWLIST = ( [ 'packageSpec' ] [ , 'packageSpec' ... ] )
Especifica uma lista de especificações de pacotes permitidas.
Padrão:
('*')
(ou seja, permitir todos os pacotes).BLOCKLIST = ( [ 'packageSpec' ] [ , 'packageSpec' ... ] )
Especifica uma lista de especificações de pacotes bloqueadas. Para remover este parâmetro, especifique uma lista vazia.
Padrão:
()
(ou seja, não bloqueia nenhum pacote).ADDITIONAL_CREATION_BLOCKLIST = ( [ 'packageSpec' ] [ , 'packageSpec' ... ] )
Especifica uma lista de especificações de pacotes bloqueadas no momento da criação. Para remover este parâmetro, especifique uma lista vazia. Se
ADDITIONAL_CREATION_BLOCKLIST
estiver definido, ele será anexado ao BLOCKLIST básico no momento da criação. Para UDFs temporárias e procedimentos armazenados anônimos, oADDITIONAL_CREATION_BLOCKLIST
é anexado ao BLOCKLIST básico no momento da criação e da execução.Padrão:
()
(ou seja, não bloqueia nenhum pacote).COMMENT = 'string_literal'
Adiciona um comentário ou substitui um comentário existente para a política de pacotes.
Requisitos de controle de acesso¶
Uma função usada para executar este comando SQL deve ter os seguintes privilégios no mínimo:
Privilégio |
Objeto |
Notas |
---|---|---|
CREATE PACKAGES POLICY |
Esquema |
Observe que operar em qualquer objeto de um esquema também requer o privilégio USAGE no banco de dados e esquema principais.
Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.
Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.
Notas de uso¶
Em relação aos metadados:
Atenção
Os clientes devem garantir que nenhum dado pessoal (exceto para um objeto do usuário), dados sensíveis, dados controlados por exportação ou outros dados regulamentados sejam inseridos como metadados ao usar o serviço Snowflake. Para obter mais informações, consulte Campos de metadados no Snowflake.
Exemplos¶
Criar uma política de pacotes para sua conta atual:
CREATE PACKAGES POLICY yourdb.yourschema.packages_policy_prod_1 LANGUAGE PYTHON ALLOWLIST = ('numpy', 'pandas==1.2.3', ...) BLOCKLIST = ('numpy==1.2.3', 'bad_package', ...) COMMENT = 'Packages policy for the prod_1 environment';