Validation du certificat de serveur TLS
S’applique à : connecteurs SaaS
connecteurs de base de données
Les pipelines de connecteurs de base de données Lakeflow Connect chiffrent toutes les données en transit à l'aide de TLS. À partir des pipelines nouvellement créés, Lakeflow Connect valide également le certificat TLS du serveur de base de données source. Cette validation de certificat vérifie que le pipeline se connecte au serveur prévu — non un imitateur — et empêche les attaques de l'homme du milieu (PITM).
Cette page s'applique aux connecteurs Lakeflow Connect pour MySQL, PostgreSQL et SQL Server.
Comment fonctionne la validation des certificats ?
Lorsqu’un nouveau pipeline se connecte à une base de données source, Lakeflow Connect vérifie le certificat TLS du serveur par rapport à un certificat CA approuvé. Le pipeline ne parvient pas à se connecter si le certificat ne peut pas être vérifié.
Les modifications de validation des certificats n'affectent pas les pipelines existants. La validation des certificats est activée par default pour les pipelines nouvellement créés.
Le comportement de validation par default diffère selon le connecteur :
Connecteur | Comportement par default lorsqu'aucun certificat CA n'est fourni |
|---|---|
MySQL | Le pipeline ne parvient pas à se connecter . MySQL nécessite un certificat CA explicite car l'utilitaire de réplication de binlog MySQL n'utilise pas le magasin de confiance JVM. Vous devez soit fournir un certificat CA dans la connexion, soit refuser la validation. |
PostgreSQL | Le pipeline se connecte à l'aide du truststore JVM par default , qui inclut des autorités de certification publiques bien connues (par exemple, DigiCert et Let's Encrypt). Si votre serveur PostgreSQL utilise un certificat d'une CA publique reconnue, aucune action n'est requise. Si votre serveur utilise une CA privée ou interne, vous devez fournir un certificat CA personnalisé. |
SQL Server | Le pipeline se connecte à l'aide du **truststore par default JVM**, qui inclut des autorités de certification publiques reconnues. Si votre SQL Server utilise un certificat d'une autorité de certification publique reconnue, aucune action n'est requise. Si votre serveur utilise une CA privée ou interne, vous devez fournir un certificat CA personnalisé. |
Fournir un certificat CA
Si votre serveur de base de données utilise un certificat d'une autorité de certification (CA) privée ou interne — ou si vous utilisez MySQL —, ajoutez votre certificat CA à la connexion Unity Catalog que le pipeline utilise.
Créer ou mettre à jour une connexion avec un certificat CA
- Databricks UI
- Databricks CLI
Pour ajouter un certificat d'autorité de certification lors de la création d'une nouvelle connexion :
- Dans le Workspace Databricks, cliquez sur
Catalogue .
- Cliquez sur **Créer**, puis sélectionnez **Créer une connexion**.
- Saisissez un **Nom de connexion** et sélectionnez le **Type de connexion** pour votre base de données.
- Cliquez sur Suivant .
- Sur la page **Authentification**, saisissez l'hôte, le port et les identifiants de connexion.
- Dans le champ **certificat SSL**, collez le contenu de votre fichier de certificat CA (format PEM).
- Cliquez sur Créer une connexion .
Pour mettre à jour une connexion existante afin d'ajouter un certificat CA :
- Dans le Workspace Databricks, cliquez sur
Catalogue .
- Dans l'Explorateur de catalogue, accédez à la connexion.
- Cliquez sur Modifier .
- Dans le champ **certificat SSL**, collez le contenu de votre fichier de certificat CA (format PEM).
- Enregistrer vos modifications.
Incluez le certificat CA dans l'objet options lors de la création d'une connexion. Les exemples suivants montrent l'option de certificat CA pour chaque connecteur.
MySQL:
databricks connections create --json '{
"name": "my_mysql_connection",
"connection_type": "MYSQL",
"options": {
"host": "<host>",
"port": "3306",
"user": "<username>",
"password": "<password>",
"ssl_ca": "<CA certificate content in PEM format>"
}
}'
PostgreSQL:
databricks connections create --json '{
"name": "my_postgresql_connection",
"connection_type": "POSTGRESQL",
"options": {
"host": "<host>",
"port": "5432",
"database": "<database>",
"user": "<username>",
"password": "<password>",
"ssl_ca": "<CA certificate content in PEM format>"
}
}'
SQL Server:
databricks connections create --json '{
"name": "my_sqlserver_connection",
"connection_type": "SQLSERVER",
"options": {
"host": "<host>",
"port": "1433",
"user": "<username>",
"password": "<password>",
"ssl_ca": "<CA certificate content in PEM format>"
}
}'
Désactiver la validation des certificats (non recommandé)
La désactivation de la validation des certificats expose vos pipelines aux attaques de l'homme du milieu (PITM) et ne doit pas être utilisée dans des environnements de production. Databricks recommande de fournir plutôt un certificat CA.
Si votre environnement ne prend pas en charge la validation des certificats, vous pouvez configurer la connexion pour faire confiance au certificat de serveur sans le vérifier auprès d'une autorité de certification (CA). Définir trustServerCertificate sur true dans les options de connexion.
- Databricks UI
- Databricks CLI
Lors de la création ou de la modification d'une connexion dans l'Explorateur de catalogues, sélectionnez Certificat de serveur de confiance pour ignorer la validation du certificat.
databricks connections create --json '{
"name": "my_connection",
"connection_type": "POSTGRESQL",
"options": {
"host": "<host>",
"port": "5432",
"database": "<database>",
"user": "<username>",
"password": "<password>",
"trustServerCertificate": "true"
}
}'
Workspaces HIPAA et FedRAMP
Dans les workspaces dotés de configurations de conformité HIPAA ou FedRAMP, Lakeflow Connect applique TLS version 1.2 ou 1.3 pour toutes les connexions de connecteur de base de données. Cette exigence ne peut pas être désactivée.
Dépanner les erreurs de certificat TLS
Si un pipeline échoue en raison d'une erreur de certificat TLS, vérifiez le log des événements du pipeline pour le pipeline de la passerelle d'ingestion. Le Logs des événements enregistre les erreurs de connexion, y compris les échecs de validation de certificat, avec des détails pour vous aider à diagnostiquer le problème.
Causes et résolutions courantes :
Erreur | Cause probable | Résolution |
|---|---|---|
| Le certificat CA du serveur ne se trouve pas dans le truststore JVM et aucun certificat CA personnalisé n'a été fourni. | Fournissez le certificat CA dans la connexion Unity Catalog. |
| Le serveur ne prend pas en charge TLS ou nécessite une version de TLS différente. | Vérifiez que TLS est activé sur votre serveur de base de données. Dans les workspaces HIPAA et FedRAMP, TLS 1.2 ou 1.3 est requis. |
| Aucun certificat CA n'a été fourni et | Fournissez le certificat CA pour MySQL, ou désactivez la validation si vous ne pouvez pas fournir de certificat. |
Pour en savoir plus sur le dépannage spécifique au connecteur, voir :