Configurar Secure Socket Layer no Oracle Cloud Infrastructure Database com PostgreSQL
Introdução
O Oracle Cloud Infrastructure Database com PostgreSQL (OCI Database with PostgreSQL) suporta apenas criptografia SSL (Secure Socket Layer) para instâncias de banco de dados. Usando SSL, você pode criptografar a conexão entre seus aplicativos e as instâncias de banco de dados PostgreSQL.
A criptografia SSL é essencial para proteger as conexões do cliente com o OCI Database with PostgreSQL, garantindo a proteção de dados durante a transmissão. Ao configurar o tipo de conexão hostssl
e usar o parâmetro sslmode
, você pode controlar o nível de verificação SSL para segurança adicional. Por padrão, o TLSv1.2
é ativado para conexões de cliente e servidor, alinhando-se às práticas padrão do setor. Para um ambiente PostgreSQL totalmente seguro e compatível, é fundamental aproveitar essas definições de SSL.
Para conexões de cliente seguras, o OCI Database with PostgreSQL só permite o tipo de conexão hostssl
no arquivo pg_hba.conf
. A entrada hostssl
garante que as conexões TCP/IP sejam criptografadas usando SSL, exigindo que os clientes usem SSL para autenticação. Você também pode especificar o nível de verificação SSL por meio do parâmetro sslmode
, que inclui opções como require
, verify-ca
e verify-full
.
No momento, os parâmetros ssl_max_protocol_version
e ssl_min_protocol_version
são configurados no OCI Database with PostgreSQL para usar o TLSv1.2
para conexões de cliente e servidor. No entanto, é importante observar que o OCI Database with PostgreSQL não pode impor versões TLS específicas, pois esses parâmetros são variáveis do sistema somente leitura.
Para obter mais informações sobre suporte a SSL em bancos de dados PostgreSQL, consulte Conexões TCP/IP Seguras com SSL.
Observação: O suporte a SSL está disponível em todas as regiões do OCI para PostgreSQL.
Objetivos
- Conecte o OCI Database with PostgreSQL usando criptografia SSL para proteger instâncias de banco de dados. Ele enfatizará a importância de configurar o tipo de conexão
hostssl
no arquivopg_hba.conf
para garantir conexões TCP/IP criptografadas e demonstrar como o parâmetrosslmode
controla os níveis de verificação de SSL. Além disso, este tutorial explicará a configuração da versão do TLS para conexões de cliente e servidor.
Modos SSL
A tabela a seguir ilustra os riscos tratados por diferentes valores sslmode
, bem como as implicações de segurança e os custos indiretos associados para cada um.
sslmode | Proteção contra espionagem | Proteção MITM | Instrução |
---|---|---|---|
disable | No | No | Não me importo com segurança e não quero pagar a sobrecarga da criptografia. |
permitir | Talvez | No | Não me importo com a segurança, mas pagarei a sobrecarga da criptografia se o servidor insistir nela. |
preferido | Talvez | No | Não me importo com criptografia, mas quero pagar a sobrecarga da criptografia se o servidor suportar. |
Exigir | Sim | No | Quero que meus dados sejam criptografados e aceito a sobrecarga. Confio que a rede irá garantir que eu sempre me conecte ao servidor que eu quero. |
verify-ca | Sim | Depende da política de CA | Quero meus dados criptografados e aceito a sobrecarga. Quero ter certeza de que me conecto a um servidor em que confio. |
verificação completa | Sim | Sim | Quero meus dados criptografados e aceito a sobrecarga. Quero ter certeza de que me conecto a um servidor em que confio e que é o que eu especifico. |
Para obter mais informações sobre as várias sslmodes
, consulte a Tabela 31-1 DESCRIÇÕES DE MODO SSL.
No OCI Database with PostgreSQL, o sslmode
deve ser definido como require
ou superior (verify-ca
ou verify-full
), pois não há suporte para conexões não SSL devido a requisitos regulatórios e de conformidade. A conectividade SSL é obrigatória para garantir que todas as conexões em trânsito sejam criptografadas, de acordo com os padrões de conformidade da OCI.
Os certificados usados no OCI Database with PostgreSQL são emitidos por uma Autoridade de Certificação (CA) privada gerenciada por meio do serviço OCI Certificates, que adere às configurações aprovadas pela OCI padronizadas. Essa abordagem difere dos certificados autoassinados tradicionais, que geralmente utilizam configurações não padrão geradas com ferramentas como OpenSSL.
Estabelecer uma Conexão com o OCI Database with PostgreSQL usando Vários Modos SSL
As tentativas de conexão com o OCI Database with PostgreSQL sem SSL são rejeitadas com a seguinte mensagem.
no pg_hba.conf entry for host "yy.yy.yy.yy", user "xxxxx", database "zzzzzz", no encryption
Sempre que a mensagem de erro acima for exibida, é recomendável verificar o valor do modo SSL e definir o parâmetro sslmode
como require
ou mais recente para resolver o problema.
-
Definir o Modo SSL
require
.Este modo força a conexão a usar SSL, mas o certificado do servidor não foi verificado.
psql "sslmode=require host=<endpoint_fqdn> dbname=<database_name> user=<user_name>"
-
Verifique a Autoridade de Certificação com o Modo SSL
verify-ca
.Este modo força SSL e o certificado do servidor é verificado em relação a uma CA confiável. Ele não verifica se o certificado do servidor corresponde ao nome do host.
psql "sslmode=verify-ca sslrootcert=<parent_directory>/<dbsystem.pub> host=<endpoint_fqdn> dbname=<database_name> user=<user_name>"
sslrootcert
: Faça download do certificado da CA na seção de detalhes da conexão do seu sistema de banco de dados e salve-o no seguinte local:<parent_directory>/<dbsystem.pub>
e esse arquivo contém os certificados da CA confiáveis. Isso garante que o certificado do servidor seja assinado por uma CA válida.
-
Verificar Completo com o Modo SSL
verify-full
.Esse modo força SSL, verifica o certificado do servidor em relação a uma CA confiável e também verifica se o certificado do servidor corresponde ao host ao qual você está se conectando (o nome do host em sua string de conexão).
psql "sslmode=verify-full sslrootcert=<parent_directory>/<dbsystem.pub> host=<endpoint_fqdn> dbname=<database_name> user=<user_name>"
sslrootcert
: Faça download do certificado da CA na seção de detalhes da conexão do seu sistema de banco de dados e salve-o no seguinte local:<parent_directory>/<dbsystem.pub>
e esse arquivo contém os certificados da CA confiáveis.
Correspondência de nome de host: Esta é a opção mais segura porque garante que o certificado do servidor seja assinado por uma CA privada gerenciada por meio do serviço OCI Certificates e que o certificado corresponda ao nome de host esperado.
Determinar as versões de TLS no OCI Database with PostgreSQL
A imagem a seguir exibe o status de criptografia da sua conexão quando você se conecta à instância do OCI Database with PostgreSQL.
Você pode executar a consulta a seguir para recuperar informações do pg_settings
.
Você pode coletar informações detalhadas sobre o uso de SSL da sua instância do OCI Database with PostgreSQL por processo, cliente e aplicativo usando a consulta a seguir.
Você pode usar a view do sistema pg_stat_ssl
para ver o status SSL de todas as conexões. Para obter mais informações, consulte a Tabela 27.8. View pg_stat_ssl
.
Configurar o Modo SSL em Diferentes Ferramentas GUI
Veja a seguir algumas ferramentas de GUI de código-fonte aberto que podem ser usadas para estabelecer conexão com bancos de dados PostgreSQL do OCI. Esta tarefa demonstra como configurar o sslmode
para o require
ou superior nessas ferramentas para evitar problemas de conectividade ao estabelecer conexão com bancos de dados PostgreSQL do OCI.
-
pgAdmin
-
Em pgAdmin, navegue até Servidor, Registrar, Servidor e informe os detalhes de conexão de banco de dados necessários.
-
Clique em Parâmetros, vá para a seção SSL, onde você pode configurar a definição do modo SSL.
-
Certifique-se de que
sslmode
esteja definido comorequire
ou um nível superior (comoverify-ca
ouverify-full
) no menu drop-down disponível para estar em conformidade com os requisitos de conexão segura.
-
-
DBeaver
-
No DBeaver, navegue até Criar e clique em Conexões.
-
Selecione PostgreSQL na lista de tipos de banco de dados e clique em Próximo para continuar.
-
Em Definições de Conexão, selecione a seção SSL nas definições de conexão para configurar parâmetros SSL.
-
Defina modo SSL como
require
.
-
Confirmações
- Autor - Kaviya Selvaraj (Equipe Técnica de Membro Sênior)
Mais Recursos de Aprendizado
Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal do Oracle Learning YouTube. Além disso, acesse education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.
Para obter a documentação do produto, visite o Oracle Help Center.
Configure Secure Socket Layer in OCI Database with PostgreSQL
G39567-01
Copyright ©2025, Oracle and/or its affiliates.