Introdução ao OAuth

O Snowflake habilita o OAuth para clientes através de integrações. Uma integração é um objeto Snowflake que fornece uma interface entre o Snowflake e serviços de terceiros. Os administradores configuram o OAuth usando uma integração de segurança, que permite aos clientes que suportam OAuth redirecionar usuários para uma página de autorização e gerar tokens de acesso (e, opcionalmente, tokens de atualização) para acesso ao Snowflake.

O Snowflake oferece suporte ao protocolo OAuth 2.0 para autenticação e autorização usando uma das opções abaixo:

A tabela seguinte compara o Snowflake OAuth e o External OAuth:

Categoria

Snowflake OAuth

OAuth externo

Modificar aplicativo do cliente

Obrigatório

Obrigatório

Acesso ao navegador do aplicativo do cliente

Obrigatório

Não é obrigatório

Clientes programáticos

Requer um navegador

Melhor opção

Propriedade do driver

authenticator = oauth

authenticator = oauth

Sintaxe de integração de segurança

create security integration type = oauth ...

create security integration type = external_oauth

Fluxo OAuth

Fluxo de concessão de código do OAuth 2.0

Qualquer fluxo OAuth que o cliente possa iniciar com o servidor External OAuth.

Auditoria de logins do OAuth

Para consultar as tentativas de login dos usuários do Snowflake, o Snowflake fornece um histórico de login:

Quando OAuth é usado para autenticar (com ou sem sucesso), a coluna FIRST_AUTHENTICATION_FACTOR na saída tem o valor OAUTH_ACCESS_TOKEN.

Conectividade privada

O Snowflake oferece suporte ao OAuth externo com conectividade privada ao serviço Snowflake.

O Snowflake OAuth e o Tableau podem ser usados com conectividade privada ao Snowflake da seguinte forma:

Tableau Desktop:

A partir do Tableau 2020.4, o Tableau contém um cliente OAuth integrado que suporta a conexão ao Snowflake com a URL da conta para conectividade privada ao serviço Snowflake.

Após atualizar para o Tableau 2020.4, nenhuma outra configuração é necessária; use a URL de conectividade privada correspondente para AWS ou Azure para se conectar ao Snowflake.

Tableau Server:

A partir do Tableau 2020.4, os usuários podem opcionalmente configurar o Tableau Server para usar o cliente OAuth integrado para se conectar ao Snowflake com a URL da conta para conectividade privada ao serviço Snowflake.

Para utilizar este recurso, crie uma nova integração de segurança de Cliente personalizado e siga as instruções do Tableau.

Tableau Online:

O Tableau Online não oferece suporte à URL da conta Snowflake para conectividade privada ao serviço Snowflake porque o Tableau Online requer acesso à internet pública.

Entre em contato com a Tableau para mais informações sobre quando o Tableau Online oferecer suporte a URLs de conta Snowflake com conectividade privada para a conectividade privada ao serviço Snowflake.

Importante

Para determinar o URL da conta a ser usado com conectividade privada ao serviço Snowflake, chame para a função SYSTEM$GET_PRIVATELINK_CONFIG.

Looker:

Atualmente, a combinação do Snowflake OAuth com o Looker requer acesso à Internet pública. Portanto, você não pode usar o Snowflake OAuth e o Looker com conectividade privada ao serviço Snowflake.

Para obter mais informações, consulte:

Clientes, drivers e conectores

Clientes, drivers e conectores com suporte podem usar OAuth para verificar as credenciais de login do usuário.

Observe o seguinte:

  • É necessário definir o parâmetro authenticator como oauth e o parâmetro token como oauth_access_token.

  • Ao passar o valor token como um parâmetro de consulta de URL, é necessário codificar o valor oauth_access_token para a URL.

  • Ao passar o valor token para um objeto Properties (por exemplo, driver JDBC), nenhuma modificação é necessária.

Para obter mais informações sobre parâmetros de conexão, consulte a documentação de referência para os seguintes clientes, drivers ou conectores:

Redirecionamento do cliente

O Snowflake oferece suporte para o uso do Redirecionamento do cliente com Snowflake OAuth e External OAuth, incluindo o uso do Redirecionamento do cliente e do OAuth com clientes Snowflake com suporte.

Para obter mais informações, consulte Redirecionamento de conexões do cliente.

Replicação

O Snowflake oferece suporte à replicação e failover/failback com as integrações de segurança OAuth e OAuth externo do Snowflake a partir da conta de origem para a conta de destino.

Para obter mais detalhes, consulte Replicação de integrações de segurança e políticas de redes em múltiplas contas.