ALTER NETWORK POLICY¶
Modifica as propriedades de uma política de redes existente. Atualmente, as únicas ações suportadas são mudar os endereços IP com acesso permitido ou negado à conta e a adição/substituição/remoção de um comentário de uma política de redes.
Nota
Somente o proprietário da política de redes (ou seja, a função com o privilégio OWNERSHIP na política de redes) ou superior pode alterar a política de redes.
- Consulte também:
CREATE NETWORK POLICY , DESCRIBE NETWORK POLICY , DROP NETWORK POLICY , SHOW NETWORK POLICIES
Sintaxe¶
ALTER NETWORK POLICY [ IF EXISTS ] <name> SET {
[ ALLOWED_NETWORK_RULE_LIST = ( '<network_rule>' [ , '<network_rule>' , ... ] ) ]
[ BLOCKED_NETWORK_RULE_LIST = ( '<network_rule>' [ , '<network_rule>' , ... ] ) ]
[ ALLOWED_IP_LIST = ( [ '<ip_address>' ] [ , '<ip_address>' ... ] ) ]
[ BLOCKED_IP_LIST = ( [ '<ip_address>' ] [ , '<ip_address>' ... ] ) ]
[ COMMENT = '<string_literal>' ] }
ALTER NETWORK POLICY [ IF EXISTS ] <name> UNSET COMMENT
ALTER NETWORK POLICY <name> ADD { ALLOWED_NETWORK_RULE_LIST = '<network_rule>' | BLOCKED_NETWORK_RULE_LIST = '<network_rule>' }
ALTER NETWORK POLICY <name> REMOVE { ALLOWED_NETWORK_RULE_LIST = '<network_rule>' | BLOCKED_NETWORK_RULE_LIST = '<network_rule>' }
ALTER NETWORK POLICY <name> RENAME TO <new_name>
ALTER NETWORK POLICY <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]
ALTER NETWORK POLICY <name> UNSET TAG <tag_name> [ , <tag_name> ... ]
Parâmetros¶
name
Especifica o identificador para a política de redes a ser alterada. Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.
SET ...
Especifica o parâmetro a ser definido para a política de redes:
ALLOWED_NETWORK_RULE_LIST = ( 'network_rule' [ , 'network_rule' , ... ] )
Especifica uma lista de regras de rede que contêm os identificadores de rede que têm permissão de acesso ao Snowflake. Não há limite para o número de regras de rede na lista.
Substitui regras de rede existentes na lista de permissões. Para adicionar regras de rede sem substituir as existentes, use o comando
ALTER NETWORK POLICY ... ADD
.BLOCKED_NETWORK_RULE_LIST = ( 'network_rule' [ , 'network_rule' , ... ] )
Especifica uma lista de regras de rede que contêm os identificadores de rede cujo acesso ao Snowflake foi negado. Não há limite para o número de regras de rede na lista.
Substitui regras de rede existentes na lista de bloqueio. Para adicionar regras de rede sem substituir as existentes, use o comando
ALTER NETWORK POLICY ... ADD
.ALLOWED_IP_LIST = ( [ ip_address ] [ , ip_address , ... ] )
Especifica uma lista de endereços IPv4 com acesso permitido à sua conta Snowflake. Ela é chamada de lista de permissões.
A Snowflake recomenda usar regras de rede em conjunto com políticas de rede em vez de usar esta propriedade. Use a propriedade
ALLOWED_NETWORK_RULE_LIST
para especificar regras de rede com endereços IPv4.Se você ainda não estiver usando regras de rede, especifique pelo menos um endereço IPv4 ou intervalo de bloco CIDR para permitir o acesso à sua conta Snowflake. Além disso, se você não estiver usando regras de rede e esta propriedade for especificada com uma lista vazia, nenhum endereço IPv4 poderá acessar sua conta Snowflake.
BLOCKED_IP_LIST = ( [ ip_address ] [ , ip_address , ... ] )
Especifica uma lista de endereços IPv4 com acesso negado à sua conta Snowflake. Ela é chamada de lista de bloqueio. Para remover este parâmetro, especifique um intervalo de blocos CIDR diferente, uma série de endereços IPv4 ou um único endereço IPv4.
A Snowflake recomenda usar regras de rede em conjunto com políticas de rede em vez de usar este parâmetro. Use a propriedade
BLOCKED_NETWORK_RULE_LIST
para especificar regras de rede com endereços IPv4.Para bloquear o acesso público, use uma regra de rede e adicione a regra de rede à propriedade
BLOCKED_NETWORK_RULE_LIST
. O resultado é que apenas endereços IP que usam conectividade privada, como AWS PrivateLink, podem acessar sua conta Snowflake.Padrão: Nenhum valor; nenhum endereço IP na propriedade
ALLOWED_IP_LIST
está bloqueado.COMMENT = 'string_literal'
Adiciona um comentário ou substitui um comentário existente para a política de redes.
TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]
Especifica o nome da tag e o valor da cadeia de caracteres dela.
O valor de tag é sempre uma cadeia de caracteres, e o número máximo de caracteres do valor da tag é 256.
Para obter informações sobre como especificar tags em uma instrução, consulte Cotas de tags para objetos e colunas.
UNSET ...
Especifica as propriedades a serem removidas para a política de redes, o que as restaura para os padrões:
COMMENT
, o que remove o comentário, se existir, para a política de redes.TAG tag_name [ , tag_name ... ]
ADD { ALLOWED_NETWORK_RULE_LIST = 'network_rule' | BLOCKED_NETWORK_RULE_LIST = 'network_rule' }
Adiciona uma regra de rede à lista de permissões ou bloqueio da política de redes sem remover as existentes.
REMOVE { ALLOWED_NETWORK_RULE_LIST = 'network_rule' | BLOCKED_NETWORK_RULE_LIST = 'network_rule' }
Remove uma regra de rede da lista de permissões ou bloqueio da política de redes.
RENAME TO ...
Especifica um novo nome para a política de redes existente.
Notas de uso¶
Não modifique uma política de redes para ter propriedades
ALLOWED_IP_LIST
eBLOCKED_IP_LIST
vazias. Use regras de rede em conjunto com a política de redes para gerenciar o acesso à sua conta Snowflake.A ação
SET
para as listas permitidas/bloqueadas não é aditiva (ou seja, ela remove todos os endereços IP nas listas existentes para a política de redes e os substitui pelas listas especificadas).Como resultado, para fazer adições às listas existentes, é necessário especificar os novos endereços IP e replicar as listas existentes.
Cada
ip_address
pode cobrir uma gama de endereços usando a notação Roteamento entre domínios sem classe (CIDR):ip_address[/optional_prefix_length]
Por exemplo:
192.168.1.0/24
Quando uma política de redes inclui valores tanto para
ALLOWED_IP_LIST
como paraBLOCKED_IP_LIST
, a Snowflake aplica primeiro a lista de bloqueio.Não adiciona
0.0.0.0/0
aBLOCKED_IP_LIST
. Como o Snowflake aplica primeiro a lista de bloqueio, isto bloquearia seu próprio acesso. Além disso, para bloquear todos os endereços IP exceto uma lista seleta, basta adicionar endereços IP aALLOWED_IP_LIST
. O Snowflake bloqueia automaticamente todos os endereços IP não incluídos na lista de permissões.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.
Exemplo¶
Por exemplo, use ALTER NETWORK POLICY para alterar uma política de redes chamada allow_access_policy
que permite o tráfego de rede definido por allow_access_rule
para também bloquear o tráfego de rede definido por block_access_rule
, de acordo com as regras de rede definidas em Intervalos de IP. Primeiro, mostre a política atual:
DESC NETWORK POLICY allow_access_policy;
+---------------------------+-------------------+
| name | value |
|---------------------------+-------------------|
| ALLOWED_NETWORK_RULE_LIST | allow_access_rule |
+---------------------------+-------------------+
Em seguida, altere allow_access_policy
para usar também block_access_rule
e, depois, mostre a política atualizada:
ALTER NETWORK POLICY IF EXISTS allow_access_policy SET
BLOCKED_NETWORK_RULE_LIST = 'block_access_rule';
DESC NETWORK POLICY allow_access_policy;
+---------------------------+-------------------+
| name | value |
|---------------------------+-------------------|
| ALLOWED_NETWORK_RULE_LIST | ALLOW_ACCESS_RULE |
| BLOCKED_NETWORK_RULE_LIST | BLOCK_ACCESS_RULE |
+---------------------------+-------------------+
Em seguida, renomeie a política atualizada para descrever o uso de ambas as regras:
ALTER NETWORK POLICY allow_access_policy RENAME TO limit_access_policy;
Em seguida, adicione um comentário que descreva que limit_access_policy
é definido por regras de rede:
ALTER NETWORK POLICY limit_access_policy SET COMMENT = 'No_Lists_See_Rules';
SHOW NETWORK POLICIES;
A saída de SHOW NETWORK POLICIES inclui o nome da política atualizada e o comentário incluso na política de redes modificada (alterada).
+-------------------------------+---------------------+--------------------+----------------------------+----------------------------+----------------------------------+----------------------------------+
| created on | name | comment | entries_in_allowed_ip_list | entries_in_blocked_ip_list | entries_in_allowed_network_rules | entries_in_blocked_network_rules |
|-------------------------------+------------------------------------------|----------------------------|----------------------------|----------------------------------|----------------------------------|
|... | | | | | | |
|-------------------------------+------------------------------------------|----------------------------|----------------------------|----------------------------------|----------------------------------|
| 2024-12-04 10:33:19.853 -0800 | LIMIT_ACCESS_POLICY | NO_LISTS_SEE_RULES | 0| 0| 1| 1|
|-------------------------------+------------------------------------------|----------------------------|----------------------------|----------------------------------|----------------------------------|
|... | | | | | | |
+-------------------------------+---------------------+--------------------+----------------------------+----------------------------+----------------------------------+----------------------------------+