Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Os pipelines do conector de banco de dados Lakeflow Connect criptografam todos os dados em trânsito com TLS. Começando com pipelines recém-criados, o Lakeflow Connect também valida o certificado TLS do servidor de banco de dados de origem. Essa validação de certificado verifica se o pipeline está se conectando ao servidor pretendido, não a um intermediário, e impede ataques man-in-the-middle (MITM).
Esta página se aplica aos conectores MySQL, PostgreSQL e SQL Server Lakeflow Connect.
Como funciona a validação de certificado
Quando um novo pipeline se conecta a um banco de dados de origem, o Lakeflow Connect verifica o certificado TLS do servidor contra um certificado de CA confiável. O pipeline falha ao conectar-se caso o certificado não seja verificado.
As alterações de validação de certificado não afetam os pipelines existentes. Os pipelines recém-criados têm a validação de certificado habilitada por padrão.
O comportamento de validação padrão difere por conector:
| Conector | Comportamento padrão quando nenhum certificado de autoridade de certificação é fornecido |
|---|---|
| MySQL | O pipeline falha ao se conectar. O MySQL requer um certificado de AC explícito porque o utilitário de replicação de binlog MySQL não usa o repositório de confiança JVM. Você deve fornecer um certificado de AC na conexão ou recusar a validação. |
| PostgreSQL | O pipeline se conecta usando o repositório de confiança padrão JVM, que inclui autoridades de certificação públicas conhecidas (por exemplo, DigiCert e Let's Encrypt). Se o servidor PostgreSQL usar um certificado de uma AC pública reconhecida, nenhuma ação será necessária. Se o servidor usar uma AC privada ou interna, você deverá fornecer um certificado de AC personalizado. |
| SQL Server | O pipeline se conecta usando o repositório de confiança padrão JVM, que inclui autoridades de certificação públicas conhecidas. Se o SQL Server usar um certificado de uma AC pública reconhecida, nenhuma ação será necessária. Se o servidor usar uma AC privada ou interna, você deverá fornecer um certificado de AC personalizado. |
Fornecer um certificado de CA
Se o seu servidor de banco de dados usar um certificado de uma CA privada ou interna—ou se você estiver usando o MySQL—adicione o seu certificado de CA à conexão do Catálogo do Unity que o pipeline usa.
Criar ou atualizar uma conexão com um certificado CA
Interface do usuário do Databricks
Para adicionar um certificado de autoridade de certificação ao criar uma nova conexão:
- No workspace Azure Databricks, clique em
Catalog.
- Clique em Criar e selecione Criar conexão.
- Insira um nome de conexão e selecione o tipo de conexão do banco de dados.
- Clique em Próximo.
- Na página Autenticação , insira as credenciais de host, porta e logon.
- No campo de certificado SSL, cole o conteúdo do arquivo de certificado de autoridade certificadora (formato PEM).
- Clique em Criar conexão.
Para atualizar uma conexão existente para adicionar um certificado de autoridade de certificação:
- No workspace Azure Databricks, clique em
Catalog.
- No Gerenciador de Catálogos, vá para a conexão.
- Clique em Editar.
- No campo certificado SSL, cole o conteúdo do arquivo de certificado da autoridade de certificação (formato PEM).
- Salve suas alterações.
CLI do Databricks
Inclua o certificado CA no objeto options ao criar uma conexão. Os exemplos a seguir mostram a opção de certificado de autoridade de certificação (CA) para cada conector.
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>"
}
}'
Recusar a validação do certificado (não recomendado)
Aviso
Desativar a validação de certificado expõe seus pipelines a ataques de agente intermediário e não deve ser utilizado em ambientes de produção. Em vez disso, o Databricks recomenda fornecer um certificado de AC.
Se o ambiente não der suporte à validação de certificado, você poderá configurar a conexão para confiar no certificado do servidor sem verificá-lo em uma AC. Defina trustServerCertificate como true nas opções de conexão.
Interface do usuário do Databricks
Ao criar ou editar uma conexão no Gerenciador de Catálogos, selecione o certificado do servidor de confiança para ignorar a validação do certificado.
CLI do Databricks
databricks connections create --json '{
"name": "my_connection",
"connection_type": "POSTGRESQL",
"options": {
"host": "<host>",
"port": "5432",
"database": "<database>",
"user": "<username>",
"password": "<password>",
"trustServerCertificate": "true"
}
}'
Espaços de trabalho HIPAA e FedRAMP
Em workspaces com configurações de conformidade HIPAA ou FedRAMP, o Lakeflow Connect impõe o TLS versão 1.2 ou 1.3 para todas as conexões do conector de banco de dados. Esse requisito não pode ser desativado.
Solucionar problemas de erros de certificado TLS
Se um pipeline falhar devido a um erro de certificado TLS, verifique o log de eventos do pipeline do gateway de ingestão. O log de eventos registra erros de conexão, incluindo falhas de validação de certificado, com detalhes para ajudá-lo a diagnosticar o problema.
Causas e resoluções comuns:
| Erro | Causa provável | Resolução |
|---|---|---|
PKIX path building failed ou unable to find valid certification path |
O certificado de AC do servidor não está no repositório de confiança JVM e nenhum certificado de AC personalizado foi fornecido. | Forneça o certificado CA na conexão do Unity Catalog. |
SSL connection has been closed unexpectedly |
O servidor não dá suporte ao TLS ou requer uma versão diferente do TLS. | Verifique se o TLS está habilitado no servidor de banco de dados. Nos workspaces HIPAA e FedRAMP, o TLS 1.2 ou 1.3 é necessário. |
Connection refused ou o fluxo falha imediatamente no MySQL |
Nenhum certificado CA foi fornecido e trustServerCertificate não está configurado. |
Forneça o certificado de autoridade certificadora para o MySQL ou desative a validação se você não puder fornecer um certificado. |
Para obter mais solução de problemas específica do conector, consulte: