Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Le pipeline del connettore di database Lakeflow Connect crittografano tutti i dati in transito tramite TLS. A partire dalle pipeline appena create, Lakeflow Connect convalida anche il certificato TLS del server di database di origine. Questa convalida del certificato verifica che la pipeline si connetta al server previsto, non un impersonatore, e prevenire attacchi tipo person-in-the-middle (PITM).
Questa pagina si applica ai connettori MySQL, PostgreSQL e SQL Server Lakeflow Connect.
Funzionamento della convalida dei certificati
Quando una nuova pipeline si connette a un database di origine, Lakeflow Connect verifica il certificato TLS del server rispetto a un certificato CA attendibile. La pipeline non riesce a connettersi se il certificato non può essere verificato.
Le modifiche alla convalida dei certificati non influiscono sulle pipeline esistenti. Le pipeline appena create hanno la convalida del certificato abilitata per impostazione predefinita.
Il comportamento di convalida predefinito è diverso dal connettore:
| Connettore | Comportamento predefinito quando non viene fornito alcun certificato CA |
|---|---|
| MySQL | La pipeline non riesce a connettersi. MySQL richiede un certificato CA esplicito perché l'utilità di replica binlog mySQL non usa l'archivio trust JVM. È necessario specificare un certificato della CA nella connessione o rifiutare esplicitamente la convalida. |
| PostgreSQL | La pipeline si connette usando l'archivio trust predefinito JVM, che include autorità di certificazione pubbliche note, ad esempio DigiCert e Let's Encrypt. Se il server PostgreSQL usa un certificato da una CA pubblica riconosciuta, non è necessaria alcuna azione. Se il server usa una CA privata o interna, è necessario fornire un certificato della CA personalizzato. |
| SQL Server | La pipeline si connette usando l'archivio trust predefinito JVM, che include autorità di certificazione pubbliche note. Se il SQL Server usa un certificato da una CA pubblica riconosciuta, non è necessaria alcuna azione. Se il server usa una CA privata o interna, è necessario fornire un certificato della CA personalizzato. |
Fornire un certificato CA
Se il server di database usa un certificato da una CA privata o interna o se si usa MySQL, aggiungere il certificato della CA alla connessione del catalogo Unity usata dalla pipeline.
Creare o aggiornare una connessione con un certificato della CA
Interfaccia utente di Databricks
Per aggiungere un certificato della CA durante la creazione di una nuova connessione:
- Nell'area di lavoro Azure Databricks fare clic su
Catalog.
- Fare clic su Crea e selezionare Crea connessione.
- Immettere un nome di connessione e selezionare il tipo di connessione per il database.
- Fare clic su Avanti.
- Nella pagina Autenticazione immettere l'host, la porta e le credenziali di accesso.
- Nel campo Certificato SSL incollare il contenuto del file del certificato DELLA CA (formato PEM).
- Fai clic su Crea connessione.
Per aggiornare una connessione esistente per aggiungere un certificato ca:
- Nell'area di lavoro Azure Databricks fare clic su
Catalog.
- In Esploratore del Catalogo, vai alla connessione.
- Fare clic su Modifica.
- Nel campo Certificato SSL incollare il contenuto del file del certificato DELLA CA (formato PEM).
- Salvare le modifiche.
Interfaccia a riga di comando di Databricks
Includere il certificato CA nell'oggetto options quando si crea una connessione. Gli esempi seguenti illustrano l'opzione certificato CA per ogni connettore.
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>"
}
}'
Rifiutare esplicitamente la convalida del certificato (scelta non consigliata)
Avvertimento
La disabilitazione della convalida del certificato espone le pipeline agli attacchi PERSON-in-the-middle (PITM) e non deve essere usata negli ambienti di produzione. Databricks consiglia invece di fornire un certificato ca.
Se l'ambiente non supporta la convalida dei certificati, è possibile configurare la connessione in modo che consideri attendibile il certificato del server senza verificarlo in base a una CA. Impostare trustServerCertificate su true nelle opzioni di connessione.
Interfaccia utente di Databricks
Quando si crea o si modifica una connessione in Esplora cataloghi, selezionare Considera attendibile il certificato del server per ignorare la convalida del certificato.
Interfaccia a riga di comando di Databricks
databricks connections create --json '{
"name": "my_connection",
"connection_type": "POSTGRESQL",
"options": {
"host": "<host>",
"port": "5432",
"database": "<database>",
"user": "<username>",
"password": "<password>",
"trustServerCertificate": "true"
}
}'
Aree di lavoro HIPAA e FedRAMP
Nelle aree di lavoro con configurazioni di conformità HIPAA o FedRAMP, Lakeflow Connect applica TLS versione 1.2 o 1.3 per tutte le connessioni al connettore di database. Questo requisito non può essere disattivato.
Risolvere gli errori del certificato TLS
Se una pipeline non riesce a causa di un errore del certificato TLS, controllare il registro eventi della pipeline del gateway di inserimento. Il registro eventi registra gli errori di connessione, inclusi gli errori di convalida dei certificati, con dettagli utili per diagnosticare il problema.
Cause e risoluzioni comuni:
| Error | Causa possibile | Risoluzione |
|---|---|---|
PKIX path building failed oppure unable to find valid certification path |
Il certificato CA del server non si trova nell'archivio attendibilità JVM e non è stato fornito alcun certificato CA personalizzato. | Specificare il certificato della CA nella connessione al catalogo Unity. |
SSL connection has been closed unexpectedly |
Il server non supporta TLS o richiede una versione TLS diversa. | Verificare che TLS sia abilitato nel server di database. Nelle aree di lavoro HIPAA e FedRAMP è necessario TLS 1.2 o 1.3. |
Connection refused o si verifica un errore nella pipeline immediatamente in MySQL |
Non è stato fornito alcun certificato CA e trustServerCertificate non è impostato. |
Specificare il certificato DELLA CA per MySQL o rifiutare esplicitamente la convalida se non è possibile fornire un certificato. |
Per altre informazioni sulla risoluzione dei problemi specifici del connettore, vedere: