Référence Paramètre de connexion pilote JDBC

Cette rubrique répertorie les paramètres de connexion que vous pouvez utiliser pour configurer le pilote JDBC. Vous pouvez définir ces paramètres dans la chaîne de connexion JDBC ou dans un objet Java Properties.

Dans ce chapitre :

Paramètres requis

Cette section énumère les paramètres que vous devez définir dans la chaîne de connexion ou dans les Map de propriétés.

Note

Vous devez également définir les paramètres d’authentification.

user

Description

Spécifie le nom de connexion de l’utilisateur pour la connexion.

Paramètres d’authentification

authenticator

Description

Spécifie l’authentificateur à utiliser pour vérifier les identifiants de connexion utilisateur. Vous pouvez définir cette option sur l’une des valeurs suivantes :

  • snowflake pour utiliser l’authentificateur interne Snowflake.

  • externalbrowser sur utilise votre navigateur Web pour vous authentifier avec Okta, des ADFS ou tout autre fournisseur d’identification conforme à SAML 2.0 (IdP) qui a été défini pour votre compte.

  • https://<nom_compte_okta>.okta.com (c.-à-d. le point de terminaison d’URL pour votre compte Okta) pour vous authentifier via Okta natif (uniquement pris en charge si votre IdP est Okta).

  • oauth pour vous authentifier à l’aide de OAuth. Lorsque OAuth est spécifié comme authentificateur, vous devez également définir le paramètre token pour spécifier le jeton OAuth (voir ci-dessous).

  • snowflake_jwt pour vous authentifier à l’aide de l’authentification par paire de clés. Pour plus de détails sur l’authentification par paire de clés, voir Utilisation de l’authentification par paires de clés et rotation des clés.

  • username_password_mfa pour s’authentifier avec la mise en cache du jeton MFA. Pour plus de détails, voir Utilisation de l’authentification multifactorielle

Si la chaîne de connexion spécifie une paire de clés, l’authentification par paire de clés sera utilisée même si le paramètre authenticator n’est pas défini ou est défini sur « Snowflake ».

Pour plus d’informations sur l’authentification, voir Gestion/utilisation de l’authentification fédérée et OAuth avec les clients, les pilotes et les connecteurs.

Par défaut

snowflake

passcode

Description

Spécifie le code à utiliser pour l’authentification multifactorielle.

Pour plus d’informations sur l’authentification multifactorielle, voir Authentification multifactorielle (MFA).

passcodeInPassword

Description

Indique si le code pour l’authentification multifactorielle est ajouté au mot de passe :

  • on (ou true) spécifie que le code est ajouté.

  • off (ou false) ou toute autre valeur spécifie que le code n’est pas ajouté.

Par défaut

off

password

Description

Spécifie le mot de passe de l’utilisateur spécifié.

Il existe deux manières de spécifier le mot de passe :

  • La première consiste à transmettre l’ID et le mot de passe de l’utilisateur directement à la méthode getConnection :

    String user = "<user>";          // replace "<user>" with your user name
    String password = "<password>";  // replace "<password>" with your password
    Connection con = DriverManager.getConnection("jdbc:snowflake://<account>.snowflakecomputing.com/", user, password);
    
  • La deuxième consiste à créer un objet Properties, à mettre à jour l’objet avec le mot de passe et à le transmettre à la méthode getConnection :

    String user = "<user>";          // replace "<user>" with your user name
    String password = "<password>";  // replace "<password>" with your password
    Properties props = new Properties();
    props.put("user", user);
    props.put("password", password);
    Connection con = DriverManager.getConnection("jdbc:snowflake://<account>.snowflakecomputing.com/", props);
    

Attention

Nous vous recommandons fortement de ne pas inclure le mot de passe utilisateur directement dans la chaîne de connexion JDBC, car le mot de passe pourrait être exposé par inadvertance par l’application client qui utilise la chaîne pour se connecter à Snowflake. Utilisez plutôt les interfaces fournies par l’application pour spécifier le mot de passe utilisateur.

privatekey

Description

Spécifie la clé privée pour l’utilisateur spécifié. Voir Utilisation de l’authentification par paires de clés et rotation des clés.

private_key_file

Description

Spécifie le chemin d’accès au fichier de clé privée pour l’utilisateur spécifié. Voir Utilisation de l’authentification par paires de clés et rotation des clés.

private_key_file_pwd

Description

Spécifie la phrase secrète qui déchiffre le fichier de clé privée pour l’utilisateur spécifié. Voir Utilisation de l’authentification par paires de clés et rotation des clés.

token

Description

Spécifie le jeton OAuth à utiliser pour l’authentification, où <chaîne> est le jeton. Ce paramètre est requis uniquement lorsque le paramètre authenticator est réglé sur oauth.

Par défaut

Aucun

Paramètres pour la base de données, le rôle, le schéma et l’entrepôt par défaut

db

Description

Spécifie la base de données par défaut à utiliser une fois la connexion effectuée, ou une chaîne vide. La base de données spécifiée doit être une base de données existante pour laquelle le rôle par défaut spécifié a des privilèges.

Si vous devez utiliser une autre base de données après la connexion, exécutez la commande USE DATABASE.

role

Description

Spécifie le rôle de contrôle d’accès par défaut à utiliser dans la session Snowflake initiée par le pilote. Le rôle spécifié doit être un rôle existant qui a déjà été affecté à l’utilisateur spécifié pour le pilote. Si le rôle spécifié n’a pas déjà été affecté à l’utilisateur, il n’est pas utilisé lorsque la session est lancée par le pilote.

Si vous devez utiliser un rôle différent après la connexion, exécutez la commande USE ROLE.

Pour plus d’informations sur les rôles et le contrôle d’accès, voir Contrôle d’accès dans Snowflake.

schema

Description

Spécifie le schéma par défaut à utiliser pour la base de données spécifiée une fois connecté, ou une chaîne vide. Le schéma spécifié doit être un schéma existant pour lequel le rôle par défaut spécifié possède des privilèges.

Si vous devez utiliser un schéma différent après la connexion, exécutez la commande USE SCHEMA.

warehouse

Description

Spécifie l’entrepôt virtuel à utiliser une fois connecté, ou une chaîne vide. L’entrepôt spécifié doit être un entrepôt existant pour lequel le rôle par défaut spécifié possède des privilèges.

Si vous devez utiliser un entrepôt différent après la connexion, exécutez la commande USE WAREHOUSE pour définir un entrepôt différent pour la session.

Paramètres du proxy

disableSocksProxy

Description

Indique si le pilote doit ignorer la configuration proxy SOCKS spécifiée dans les options système Java :

  • on (ou true) spécifie d’ignorer le proxy.

  • off (ou false) ou toute autre valeur spécifie d’utiliser le proxy.

Note

Le réglage de ce paramètre de connexion modifie le comportement de toutes les connexions d’une même JVM (machine virtuelle Java).

Par défaut

off

nonProxyHosts

Description

Spécifie la liste des hôtes auxquels le pilote doit se connecter directement, sans passer par le serveur proxy. Voir Spécification d’un serveur proxy dans la chaîne de connexion JDBC pour plus de détails.

proxyHost

Description

Spécifie le nom d’hôte du serveur proxy à utiliser. Voir Spécification d’un serveur proxy dans la chaîne de connexion JDBC pour plus de détails.

proxyPassword

Description

Spécifie le mot de passe pour l’authentification au serveur proxy. Voir Spécification d’un serveur proxy dans la chaîne de connexion JDBC pour plus de détails.

proxyPort

Description

Spécifie le numéro de port du serveur proxy à utiliser. Voir Spécification d’un serveur proxy dans la chaîne de connexion JDBC pour plus de détails.

proxyProtocol

Description

Spécifie le protocole utilisé pour se connecter au serveur proxy à utiliser. Voir Spécification d’un serveur proxy dans la chaîne de connexion JDBC pour plus de détails.

Par défaut

http

proxyUser

Description

Spécifie le nom d’utilisateur pour l’authentification au serveur proxy. Voir Spécification d’un serveur proxy dans la chaîne de connexion JDBC pour plus de détails.

useProxy

Description

Indique si le pilote doit utiliser un proxy :

  • on (ou true) spécifie que le pilote doit utiliser un proxy.

  • off (ou false) ou toute autre valeur spécifie que le pilote ne doit pas utiliser de proxy.

Voir Spécification d’un serveur proxy dans la chaîne de connexion JDBC pour plus de détails.

Par défaut

off

Paramètres de délai d’expiration

loginTimeout

Description

Indique le nombre de secondes pour l’obtention d’une réponse lors de la connexion au service Snowflake avant de renvoyer une erreur d’échec de connexion.

Par défaut

60

networkTimeout

Description

Spécifie le nombre de millisecondes à attendre pour obtenir une réponse lors d’une interaction avec le service Snowflake avant de renvoyer une erreur. 0 (zéro) indique qu’aucun délai d’expiration réseau n’est défini.

Par défaut

0

queryTimeout

Description

Spécifie le nombre de secondes à attendre pour qu’une requête se termine avant de retourner une erreur. 0 (zéro) indique que le pilote doit attendre indéfiniment.

Par défaut

0

Autres paramètres

application

Description

Pour partenaire Snowflake uniquement : spécifie le nom d’une application partenaire à connecter via JDBC.

ocspFailOpen

Description

Spécifie que le pilote doit « échouer » s’il ne peut pas atteindre le serveur OCSP pour vérifier le certificat. Voir OCSP.

stringsQuotedForColumnDef

Description

Si ce paramètre est défini sur true, alors lorsque DatabaseMetaData.getColumns() et DatabaseMetaData.getProcedureColumns() renvoient une valeur de type String dans la colonne COLUMN_DEF, cette valeur est intégrée dans des guillemets simples. (Si le type de données de la valeur n’est pas String, la valeur n’est pas entre guillemets, quel que soit le réglage de ce paramètre.)

  • true spécifie que les valeurs de chaîne doivent être intégrées entre guillemets simples (les guillemets font partie de la chaîne, pas des délimiteurs). Ceci est conforme à la norme JDBC.

  • false spécifie que les valeurs de chaîne ne sont pas intégrées entre guillemets simples.

Par défaut

false

tracing

Description

Spécifie le niveau de journal du conducteur. Le pilote utilise l’utilitaire de journalisation standard Java. Vous pouvez définir ce paramètre sur l’un des niveaux de journalisation suivants :

  • OFF

  • SEVERE

  • WARNING

  • INFO

  • CONFIG

  • FINE

  • FINER

  • FINEST

  • ALL

Par défaut

INFO