Opções de conexão do Node.js¶
Ao construir um novo objeto Connection
, você passa um objeto JavaScript que especifica as opções para a conexão (por exemplo, o identificador de sua conta, seu nome de usuário, etc.). As seções seguintes descrevem as opções que você pode definir. Para definir uma opção, especifique o nome da opção como o nome da propriedade no objeto JavaScript.
Opções de conexão necessárias¶
account
username
O nome de login para seu usuário Snowflake ou seu provedor de identidade (por exemplo, seu nome de login para Okta).
region
(Obsoleto)A ID para a região onde sua conta está localizada.
Nota
Esta opção é obsoleta e está incluída aqui apenas para compatibilidade retroativa. O Snowflake recomenda a transição para incorporar a região no identificador de conta, como descrito em Uso de um localizador de contas como identificador, como a seguir.
var connection = snowflake.createConnection({ account: "myaccount.us-east-2", username: "myusername", password: "mypassword" });
Além disso, é necessário especificar as opções para autenticação no servidor.
Opções de autenticação¶
application
Especifica o nome do aplicativo do cliente que conecta ao Snowflake.
authenticator
Especifica o autenticador a ser usado para verificar as credenciais de login de usuário. Você pode definir isto para um dos seguintes valores:
Valor
Descrição
SNOWFLAKE
Use o autenticador interno do Snowflake. Você também deve definir a opção
password
.EXTERNALBROWSER
Use seu navegador para autenticar com Okta, AD FS ou qualquer outro provedor de identidade compatível com SAML 2.0 (IdP) que tenha sido definido para sua conta.
https://<nome_conta_okta>.okta.com
OAUTH
Use OAuth para autenticação. Você também deve definir a opção
token
para o token OAuth (consulte abaixo).SNOWFLAKE_JWT
Use autenticação de par de chaves. Consulte Uso de autenticação e rodízio do par de chaves.
O valor padrão é
SNOWFLAKE
.Para obter mais informações sobre autenticação, consulte Gerenciamento/uso da autenticação federada e Clientes, drivers e conectores.
password
Senha do usuário. Defina esta opção se você definir a opção
authenticator
paraSNOWFLAKE
ou o ponto de extremidade da URL Okta para sua conta Okta (por exemplo,https://<nome_conta_okta>.okta.com
) ou se você deixar a opçãoauthenticator
por definir.
token
Especifica o token OAuth a ser usado para autenticação. Defina esta opção se você definir a opção
authenticator
paraOAUTH
.privateKey
Especifica a chave privada (em formato PEM) para autenticação do par de chaves. Para obter mais detalhes, consulte Uso de autenticação e rodízio do par de chaves.
privateKeyPath
Especifica o caminho local para o arquivo de chave privada (por exemplo,
rsa_key.p8
). Para obter mais detalhes, consulte Uso de autenticação e rodízio do par de chaves.privateKeyPass
Especifica a senha para descriptografar o arquivo de chave privada, se o arquivo estiver criptografado. Para obter mais detalhes, consulte Uso de autenticação e rodízio do par de chaves.
Opções adicionais de conexão¶
accessUrl
Especifica um ponto de extremidade totalmente qualificado para a conexão com o Snowflake. O
accessUrl
inclui o esquema completo e o host, assim como um número de porta opcional, semelhante aohttps://myaccount.us-east-1.snowflakecomputing.com
.Nota
Ao utilizar a opção
accessUrl
, o valor especificado na opçãoaccount
não é utilizado.arrayBindingThreshold
Define o número máximo de vinculações que o driver utiliza em uma operação de inserção em massa. O valor padrão é 100000 (100K).
clientSessionKeepAlive
Por padrão, as conexões do cliente normalmente atingem o tempo limite cerca de 3-4 horas depois que a consulta mais recente foi executada.
Se a opção
clientSessionKeepAlive
estiver definida comotrue
, a conexão do cliente com o servidor será mantida indefinidamente, mesmo que nenhuma consulta seja executada.A configuração padrão desta opção é false.
Se você definir esta opção como
true
, certifique-se de que seu programa se desconecte explicitamente do servidor quando tiver terminado. Não saia sem desconectar.clientSessionKeepAliveHeartbeatFrequency
(Aplica-se somente quando
clientSessionKeepAlive
é verdadeiro)Define a frequência (intervalo em segundos) entre as mensagens de pulsação.
Pense em uma mensagem de pulsação da conexão como um substituto para uma consulta que reinicia a contagem regressiva do tempo limite para a conexão. Em outras palavras, se o tempo limite da conexão ocorrer após pelo menos 4 horas de inatividade, a pulsação redefine o timer para que o tempo limite não ocorra até pelo menos 4 horas após a pulsação mais recente (ou consulta).
O valor padrão é 3600 segundos (uma hora). O intervalo válido de valores é 900 - 3600. Como o tempo limite normalmente ocorre após pelo menos 4 horas, uma pulsação a cada 1 hora normalmente é suficiente para manter a conexão ativa. Intervalos de pulsação de menos de 3600 segundos raramente são necessários ou úteis.
database
O banco de dados padrão a ser utilizado para a sessão após a conexão.
noProxy
Especifica as listas de hosts aos quais o driver deve se conectar diretamente, ignorando o servidor proxy (por exemplo,
*.amazonaws.com
para fazer o bypass do acesso do Amazon S3). Para hosts múltiplos, separe os nomes do host com um símbolo de canal (|
). Você também pode usar um asterisco como curinga. Por exemplo:noProxy: "*.amazonaws.com|*.my_company.com"
proxyHost
Especifica o nome do host de um servidor proxy autenticado.
proxyPassword
Especifica a senha para o usuário especificada por
proxyUser
.proxyPort
Especifica a porta de um servidor proxy autenticado.
proxyProtocol
Especifica o protocolo usado para conectar ao servidor proxy autenticado. Use esta propriedade para especificar o protocolo HTTP:
http
ouhttps
.proxyUser
Especifica o nome de usuário usado para se conectar a um servidor proxy autenticado.
resultPrefetch
Número de threads a serem utilizados pelos clientes para pré-buscar grandes conjuntos de resultados. Valores válidos: 1-10.
role
A função de segurança padrão a ser usada para a sessão após a conexão.
schema
O esquema padrão a ser usado para a sessão após a conexão.
timeout
Número de milissegundos para manter a conexão ativa sem resposta. Padrão: 60000 (1 minuto).
warehouse
O warehouse virtual padrão a ser utilizado para a sessão após a conexão. Utilizado para realizar consultas, carregar dados, etc.
Algumas opções de conexão consideram que o objeto de banco de dados especificado (banco de dados, esquema, warehouse ou função) já existe no sistema. Se o objeto especificado não existir, não é definido um padrão durante a conexão.
Após a conexão, todas as opções opcionais de conexão também podem ser definidas ou substituídas através do comando USE <objeto>.