O RDS for MySQL oferece suporte à criptografia Secure Sockets Layer (SSL) para endpoints de proxy de banco de dados. Você pode ative a criptografia SSL e instale um certificado de CA na sua aplicação para proteger os dados em trânsito. Este tópico descreve como configure a criptografia SSL para um proxy de banco de dados.
O SSL criptografa as conexões de rede na camada de transporte, o que protege os dados em trânsito e garante sua integridade. No entanto, isso também pode aumentar ligeiramente o tempo de resposta da conexão.
Pré-requisitos
Versão do mecanismo da instância: MySQL 8.4, 8.0, 5.7 ou 5.6
-
Edição do product: Cluster Edition ou High-availability Edition
NotaSe a instância possuir instâncias somente leitura, elas também devem atender aos requisitos de minor engine version.
Para instâncias da High-availability Edition executando MySQL 8.0, 5.7 ou 5.6, a versão secundária do mecanismo deve ser 20200831 ou posterior.
A minor engine version of the database proxy é 2.25.3 ou posterior.
O endpoint de proxy de banco de dados de destino deve ter 64 caracteres ou menos.
Observações de uso
A criptografia SSL pode ser ativada para apenas um endpoint de proxy de banco de dados por terminal de proxy.
ative ou desative a criptografia SSL, alterar o endpoint criptografado ou atualize o período de validade do certificado reiniciará a instância de proxy. Proceda com cautela.
ative a criptografia SSL
ative a criptografia SSL reinicia a instância de proxy. Proceda com cautela.
acesse a página RDS instances, selecione uma região na parte superior e clique em ID da instância de destino.
No painel de navegação à esquerda, clique em Database Proxy.
Na seção Connection Information, passe o mouse sobre o ID do endpoint de proxy de banco de dados de destino. Na caixa de diálogo exibida, acesse a seção SSL Encryption Configuration e clique em Activate ao lado de SSL Encryption.
Na caixa de diálogo exibida, selecione o endpoint que deseja criptografar e clique em OK.
-
Após o status do SSL mudar para On, clique em Download CA Certificate ao lado de SSL Encryption.
Nota-
O arquivo baixado é um pacote compactado que contém os três arquivos a seguir:
Arquivo PEM: adequado para a maioria dos casos de uso.
Arquivo JKS: normalmente, as aplicações Java exigem a importação de um certificado PEM para um truststore JKS. Você pode usar diretamente este arquivo JKS na sua aplicação Java. A senha é apsaradb.
Arquivo P7B: adequado para algumas aplicações Windows que exigem um arquivo de certificado PKCS #7.
Após configure o certificado de CA SSL, você pode verifique o certificado do servidor de banco de dados.
-
Se você usar o arquivo de certificado JKS no Java Development Kit (JDK) 7 ou 8, será necessário modifique as configurações de segurança padrão. No host da sua aplicação, abra o arquivo
jre/lib/security/java.securitye modifique os dois parâmetros a seguir:jdk.tls.disabledAlgorithms=SSLv3, RC4, DH keySize < 224 jdk.certpath.disabledAlgorithms=MD2, RSA keySize < 1024Caso não modifique a configuração de segurança, você poderá receber um erro semelhante ao seguinte. Erros semelhantes geralmente são causados pela configuração de segurança do Java.
javax.net.ssl.SSLHandshakeException: DHPublicKey does not comply to algorithm constraints
-
configure um certificado de CA
Após ative a criptografia SSL e baixe o certificado de CA, você pode configure o certificado de CA. Para mais informações, consulte Configure a CA certificate.
Alterar o endpoint criptografado por SSL
Alterar o endpoint criptografado por SSL atualize o período de validade do certificado e reinicia a instância de proxy. Proceda com cautela.
acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, encontre a instância RDS e clique em ID da instância.
No painel de navegação à esquerda, clique em Database Proxy.
Na seção Connection Information, passe o mouse sobre o ID do endpoint de proxy de banco de dados de destino. Na caixa de diálogo exibida, acesse a seção SSL Encryption Configuration e clique em Change Protected Endpoint abaixo de Protected Endpoint.
Selecione o endpoint que deseja criptografar e clique em OK.
atualize a validade do certificado
atualize o período de validade do certificado reinicia a instância de proxy. Proceda com cautela.
acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, encontre a instância RDS e clique em ID da instância.
No painel de navegação à esquerda, clique em Database Proxy.
Na seção Connection Information, passe o mouse sobre o ID do endpoint de proxy de banco de dados de destino. Na caixa de diálogo exibida, acesse a seção SSL Encryption Configuration e clique em Update Expiration Time ao lado de SSL Encryption. Clique em OK na caixa de diálogo de confirmação subsequente.
Desativar a criptografia SSL
Desativar a criptografia SSL reinicia a instância de proxy. Proceda com cautela.
acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, encontre a instância RDS e clique em ID da instância.
No painel de navegação à esquerda, clique em Database Proxy.
Na seção Connection Information, passe o mouse sobre o ID do endpoint de proxy de banco de dados de destino. Na caixa de diálogo exibida, acesse a seção SSL Encryption Configuration e clique em Close ao lado de SSL Encryption. Clique em OK na caixa de diálogo de confirmação subsequente.
Referência da API
|
API |
Descrição |
|
Configura a criptografia SSL para um endpoint de proxy de banco de dados. |
|
|
Consulta as informações de criptografia SSL de um endpoint de proxy de banco de dados. |
Apêndice
Código de exemplo de conexão SSL
Para mais informações, consulte Sample code for connecting to a database over SSL.
Perguntas frequentes sobre criptografia SSL
Para mais informações, consulte FAQ about SSL encryption.