- Categorias:
Funções do sistema (Informações do sistema)
SYSTEM$ALLOWLIST¶
Retorna nomes de host e números de porta a fim de adicioná-los à lista de permissão do seu firewall para que você possa acessar o Snowflake sem o bloqueio do seu firewall. A saída desta função pode então ser passada para SnowCD.
Normalmente, os clientes do Snowflake usam um firewall para impedir o acesso não autorizado. Por padrão, seu firewall pode bloquear o acesso ao Snowflake. Para atualizar a lista de permissão de seu firewall, você precisa saber os nomes de host e números de porta do URL de sua conta Snowflake, estágios e outros hosts usados pelo Snowflake.
Para obter mais detalhes sobre a listagem permitida para os clientes do Snowflake que você utiliza, consulte Permissão de nomes de host.
Sintaxe¶
SYSTEM$ALLOWLIST()
Argumentos¶
Nenhum.
Retornos¶
O tipo de dados do valor retornado é VARIANT. O valor é um conjunto de estruturas JSON. Cada estrutura JSON contém três pares chave/valor:
typeO Snowflake oferece suporte aos seguintes tipos:
SNOWFLAKE_DEPLOYMENTInformações sobre o nome do host e o número da porta para sua conta Snowflake.
SNOWFLAKE_DEPLOYMENT_REGIONLESSInformações sobre o nome do host e número de porta de sua organização.
Para obter mais informações, consulte Identificadores de conta.
STAGELocal (ou seja, Amazon S3, Google Cloud Storage ou Microsoft Azure) onde são armazenados arquivos que o cliente Snowflake pode ler ou gravar.
SNOWSQL_REPOPonto de extremidade acessado por SnowSQL para realizar downloads/atualizações automáticos.
OUT_OF_BAND_TELEMETRYOs hosts aos quais os drivers relatam métricas e incidentes fora de banda, tais como questões OCSP.
CLIENT_FAILOVERNome do host e porta para a URL de conexão para redirecionamento do cliente. Observe que cada linha na saída da consulta que especifica esse valor se refere à conexão primária ou secundária, dependendo de como as URLs de conexão foram configuradas.
OCSP_CACHEFonte alternativa de informação de certificado OCSP fornecida pelo Snowflake caso o respondente primário OCSP não possa ser alcançado. A maioria das versões mais recentes dos clientes Snowflake acessam o cache OCSP em vez de conectar-se diretamente ao respondenteOCSP.
OCSP_CACHE_REGIONLESSFonte alternativa de informações de certificado OCSP para sua organização fornecida pelo Snowflake. A maioria das versões mais recentes dos clientes Snowflake acessam o cache OCSP em vez de conectar-se diretamente ao respondenteOCSP.
OCSP_CLIENT_FAILOVERFonte alternativa fornecida pelo Snowflake de informações do certificado OCSP para redirecionamento do cliente.
DUO_SECURITYO nome do host para o serviço Duo Security que é usado com Autenticação multifator (MFA) enquanto se autentica ao Snowflake.
OCSP_RESPONDERNome do host a ser contatado para verificar se o certificado OCSP TLS não foi revogado.
Observe que este valor não é necessário ao configurar a conectividade privada ao serviço Snowflake; siga as instruções no tópico correspondente para selecionar o valor OCSP a ser adicionado à sua lista de permissões.
SNOWSIGHT_DEPLOYMENT_REGIONLESSNome do host e número de porta de sua organização para acessar o Snowsight.
Para obter mais informações, consulte Identificadores de conta e Snowsight: a interface da Web do Snowflake.
SNOWSIGHT_DEPLOYMENTNome do host e porta de acesso do Snowsight para sua conta Snowflake.
hostEspecifica o nome completo do nome do host para
type(por exemplo,"xy12345.east-us-2.azure.snowflakecomputing.com","ocsp.snowflakecomputing.com").portEspecifica o número da porta para
type(por exemplo,443,80).
Notas de uso¶
A saída pode incluir entradas múltiplas para certos tipos (por exemplo,
STAGE,OCSP_RESPONDER).Ocasionalmente, o Snowflake não consegue resolver a conexão de soquete do cliente que chama a função, e a instrução que chama a função falha com uma das seguintes mensagens de erro:
SYSTEM$ALLOWLIST: Fail to get SSL context SYSTEM$ALLOWLIST: SSLContext init failed SYSTEM$ALLOWLIST: Could not find host in OCSP dumping SYSTEM$ALLOWLIST: Peer unverified SYSTEM$ALLOWLIST: Connection failure
Além disso, Snowflake retorna uma lista vazia para os campos OCSP na saída da função. Para solucionar problemas, você pode aguardar alguns minutos e executar novamente a instrução se a conexão de rede for transitória. Se o problema persistir, entre em contato com o suporte Snowflake.
Exemplos¶
Para chamar a função:
SELECT SYSTEM$ALLOWLIST();Exemplo de saída:
[ {"type":"SNOWFLAKE_DEPLOYMENT", "host":"xy12345.snowflakecomputing.com", "port":443}, {"type":"STAGE", "host":"sfc-customer-stage.s3.us-west-2.amazonaws.com", "port":443}, ... {"type":"SNOWSQL_REPO", "host":"sfc-repo.snowflakecomputing.com", "port":443}, ... {"type":"OCSP_CACHE", "host":"ocsp.snowflakecomputing.com", "port":80} {"type":"OCSP_RESPONDER", "host":"o.ss2.us", "port":80}, ... ]Nesta exemplo de saída, observe o seguinte:
Para facilitar a leitura, foram acrescentados espaços em branco e caracteres de nova linha. Além disso, algumas entradas foram omitidas.
A ID da região (
us-west-2) em alguns dos nomes de host indica que a conta está região oeste dos US; no entanto, a ID da região não é utilizada no nome do host paraSNOWFLAKE_DEPLOYMENT.
Para extrair as informações na saída tabular em vez de JSON, use a função FLATTEN em conjunto com a função PARSE_JSON:
SELECT t.VALUE:type::VARCHAR as type, t.VALUE:host::VARCHAR as host, t.VALUE:port as port FROM TABLE(FLATTEN(input => PARSE_JSON(SYSTEM$ALLOWLIST()))) AS t;Exemplo de saída:
+-----------------------+---------------------------------------------------+------+ | TYPE | HOST | PORT | |-----------------------+---------------------------------------------------+------| | SNOWFLAKE_DEPLOYMENT | xy12345.snowflakecomputing.com | 443 | | STAGE | sfc-customer-stage.s3.us-west-2.amazonaws.com | 443 | ... | SNOWSQL_REPO | sfc-repo.snowflakecomputing.com | 443 | ... | OCSP_CACHE | ocsp.snowflakecomputing.com | 80 | | OCSP_RESPONDER | ocsp.sca1b.amazontrust.com | 80 | ... +-----------------------+---------------------------------------------------+------+