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>' ]
Copy

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 detalhes, 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, o ADDITIONAL_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';
Copy