As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
ElastiCache criptografia em trânsito () TLS
Para ajudar a manter seus dados seguros, a Amazon ElastiCache e a Amazon EC2 fornecem mecanismos de proteção contra o acesso não autorizado aos seus dados no servidor. Ao fornecer o recurso de criptografia em trânsito, ElastiCache oferece uma ferramenta que você pode usar para ajudar a proteger seus dados quando eles são movidos de um local para outro.
Todos os caches OSS sem servidor Valkey ou Redis têm a criptografia em trânsito ativada. Para clusters autoprojetados, você pode habilitar a criptografia em trânsito em um grupo de replicação definindo o parâmetro como true
(CLI:--transit-encryption-enabled
) TransitEncryptionEnabled
ao criar o grupo de replicação. Você pode fazer isso se estiver criando o grupo de replicação usando o AWS Management Console AWS CLI, o ou o. ElastiCache API
Todos os caches sem servidor têm criptografia em trânsito habilitada. Para clusters autoprojetados, você pode habilitar a criptografia em trânsito em um cluster de cache definindo o parâmetro TransitEncryptionEnabled
como true
(CLI:--transit-encryption-enabled
) ao criar o cluster de cache usando a operação CreateCacheCluster
(CLI:create-cache-cluster
).
Tópicos
- Visão geral da criptografia em trânsito
- Condições de criptografia em trânsito (Valkey e Redis) OSS
- Condições de criptografia em trânsito (Memcached)
- Práticas recomendadas de criptografia em trânsito
- Outras opções de Valkey e Redis OSS
- Habilitação da criptografia em trânsito para o Memcached
- Habilitação da criptografia em trânsito
- Conexão com ElastiCache (Valkey) ou Amazon ElastiCache for Redis OSS com criptografia em trânsito usando valkey-cli
- Ativar criptografia em trânsito em um cluster autoprojetado do Redis OSS usando Python
- Práticas recomendadas ao habilitar a criptografia em trânsito
- Conectar-se a nós habilitados com criptografia em trânsito usando o Openssl (Memcached)
- Criando um cliente TLS Memcached usando Java
- Criando um cliente TLS Memcached usando PHP
Visão geral da criptografia em trânsito
A criptografia ElastiCache em trânsito da Amazon é um recurso que permite aumentar a segurança de seus dados nos pontos mais vulneráveis, quando estão em trânsito de um local para outro. Como a criptografia e descriptografia dos dados requerem processamento nos endpoints, a ativação da criptografia em trânsito pode ter impacto no desempenho. Compare seus dados com e sem criptografia em trânsito para determinar o impacto no desempenho para seus casos de uso.
ElastiCache a criptografia em trânsito implementa os seguintes recursos:
-
Conexões de cliente criptografadas — as conexões do cliente com os nós de cache são TLS criptografadas.
-
Conexões de servidor criptografadas: os dados que se movem entre os nós em um cluster são criptografados.
-
Autenticação do servidor: os clientes podem autenticar que estão conectados ao servidor certo.
-
Autenticação do cliente — usando o OSS AUTH recurso Valkey e Redis, o servidor pode autenticar os clientes.
Condições de criptografia em trânsito (Valkey e Redis) OSS
As seguintes restrições na criptografia ElastiCache em trânsito da Amazon devem ser lembradas ao planejar sua implementação de cluster autoprojetada:
-
A criptografia em trânsito é suportada em grupos de replicação que executam o Valkey 7.2 e posterior e as OSS versões 3.2.6, 4.0.10 e posteriores do Redis.
-
A modificação da configuração de criptografia em trânsito, para um cluster existente, é suportada em grupos de replicação que executam o Valkey 7.2 e posterior e o Redis OSS versão 7 e posterior.
-
A criptografia em trânsito é suportada somente para grupos de replicação executados em uma Amazon. VPC
-
A criptografia em trânsito não é suportada para grupos de replicação que executam os seguintes tipos de nó: M1, M2.
Para obter mais informações, consulte Tipos de nó compatíveis.
-
A criptografia em trânsito é ativada configurando explicitamente o parâmetro
TransitEncryptionEnabled
comotrue
. -
Certifique-se de que seu cliente de armazenamento em cache ofereça suporte à TLS conectividade e que você a tenha habilitado na configuração do cliente.
-
O uso dos antigos TLS 1.0 e TLS 1.1 está obsoleto em todas as AWS regiões para a ElastiCache versão 6 e superior. ElastiCache continuará a oferecer suporte a TLS 1.0 e 1.1 até 8 de maio de 2025. Os clientes devem atualizar o software-cliente antes dessa data.
Condições de criptografia em trânsito (Memcached)
As seguintes restrições na criptografia ElastiCache em trânsito da Amazon devem ser lembradas ao planejar sua implementação de cluster autoprojetada:
-
A criptografia em trânsito é compatível com clusters executando as versões 1.6.12 e posteriores do Memcached.
-
A criptografia em trânsito oferece suporte às versões 1.2 e 1.3 do Transport Layer Security (TLS).
-
A criptografia em trânsito é suportada somente para clusters executados em uma AmazonVPC.
-
A criptografia em trânsito não é suportada para grupos de replicação que executam os seguintes tipos de nó: M1, M2, M3, R3, T2.
Para obter mais informações, consulte Tipos de nó compatíveis.
-
A criptografia em trânsito é ativada configurando explicitamente o parâmetro
TransitEncryptionEnabled
comotrue
. -
Só é possível ativar a criptografia em trânsito em um cluster ao criá-lo. Não é possível ativar e desativar a criptografia em trânsito modificando um cluster.
-
Certifique-se de que seu cliente de armazenamento em cache ofereça suporte à TLS conectividade e que você a tenha habilitado na configuração do cliente.
Práticas recomendadas de criptografia em trânsito
-
Como a criptografia e descriptografia dos dados requerem processamento nos endpoints, a implementação da criptografia em trânsito pode reduzir o desempenho. Compare seus dados com criptografia em trânsito e sem criptografia para determinar o impacto no desempenho da sua implementação.
-
Como criar novas conexões pode ser caro, você pode reduzir o impacto no desempenho da criptografia em trânsito persistindo suas TLS conexões.
Outras opções de Valkey e Redis OSS
Para obter mais informações sobre as opções disponíveis para Valkey e RedisOSS, consulte os links a seguir.
Habilitação da criptografia em trânsito para o Memcached
Para ativar a criptografia em trânsito ao criar um cluster Memcached usando o AWS Management Console, escolha as seguintes opções:
-
Escolha o Memcached como seu mecanismo.
-
Escolha a versão 1.6.12 ou posterior do mecanismo.
-
Em Encryption in transit (Criptografia em trânsito), escolha Enable (Habilitar).
Para o step-by-step processo, consulteCriação de um cluster para Valkey ou Redis OSS.
Conectar-se a nós habilitados com criptografia em trânsito usando o Openssl (Memcached)
Para acessar dados de quatro nós do ElastiCache Memcached habilitados com criptografia em trânsito, você precisa usar clientes que funcionem com Secure Socket Layer (). SSL Também é possível usar a Openssl s_client no Amazon Linux e no Amazon Linux 2.
Para usar a Openssl s_client para se conectar a um cluster Memcached habilitado com criptografia em trânsito no Amazon Linux 2 ou no Amazon Linux:
/usr/bin/openssl s_client -connect
memcached-node-endpoint
:memcached-port
Criando um cliente TLS Memcached usando Java
Para criar um cliente no TLS modo, faça o seguinte para inicializar o cliente com o apropriadoSSLContext:
import java.security.KeyStore; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManagerFactory; import net.spy.memcached.AddrUtil; import net.spy.memcached.ConnectionFactoryBuilder; import net.spy.memcached.MemcachedClient; public class TLSDemo { public static void main(String[] args) throws Exception { ConnectionFactoryBuilder connectionFactoryBuilder = new ConnectionFactoryBuilder(); // Build SSLContext TrustManagerFactory tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm()); tmf.init((KeyStore) null); SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(null, tmf.getTrustManagers(), null); // Create the client in TLS mode connectionFactoryBuilder.setSSLContext(sslContext); MemcachedClient client = new MemcachedClient(connectionFactoryBuilder.build(), AddrUtil.getAddresses("mycluster.fnjyzo.cfg.use1.cache.amazonaws.com:11211")); // Store a data item for an hour. client.set("theKey", 3600, "This is the data value"); } }
Criando um cliente TLS Memcached usando PHP
Para criar um cliente no TLS modo, faça o seguinte para inicializar o cliente com o apropriadoSSLContext:
<?php /** * Sample PHP code to show how to create a TLS Memcached client. In this example we * will use the Amazon ElastiCache Auto Descovery feature, but TLS can also be * used with a Static mode client. * See Using the ElastiCache Cluster Client for PHP (https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/AutoDiscovery.Using.ModifyApp.PHP.html) for more information * about Auto Discovery and persistent-id. */ /* Configuration endpoint to use to initialize memcached client. * this is only an example */ $server_endpoint = "mycluster.fnjyzo.cfg.use1.cache.amazonaws.com"; /* Port for connecting to the cluster. * This is only an example */ $server_port = 11211; /* Initialize a persistent Memcached client and configure it with the Dynamic client mode */ $tls_client = new Memcached('persistent-id'); $tls_client->setOption(Memcached::OPT_CLIENT_MODE, Memcached::DYNAMIC_CLIENT_MODE); /* Add the memcached's cluster server/s */ $tls_client->addServer($server_endpoint, $server_port); /* Configure the client to use TLS */ if(!$tls_client->setOption(Memcached::OPT_USE_TLS, 1)) { echo $tls_client->getLastErrorMessage(), "\n"; exit(1); } /* Set your TLS context configurations values. * See MemcachedTLSContextConfig in memcached-api.php for all configurations */ $tls_config = new MemcachedTLSContextConfig(); $tls_config->hostname = '*.mycluster.fnjyzo.use1.cache.amazonaws.com'; $tls_config->skip_cert_verify = false; $tls_config->skip_hostname_verify = false; /* Use the created TLS context configuration object to create OpenSSL's SSL_CTX and set it to your client. * Note: These TLS context configurations will be applied to all the servers connected to this client. */ $tls_client->createAndSetTLSContext((array)$tls_config); /* test the TLS connection with set-get scenario: */ /* store the data for 60 seconds in the cluster. * The client will decide which cache host will store this item. */ if($tls_client->set('key', 'value', 60)) { print "Successfully stored key\n"; } else { echo "Failed to set key: ", $tls_client->getLastErrorMessage(), "\n"; exit(1); } /* retrieve the key */ if ($tls_client->get('key') === 'value') { print "Successfully retrieved key\n"; } else { echo "Failed to get key: ", $tls_client->getLastErrorMessage(), "\n"; exit(1); }
Para obter mais informações sobre como usar o PHP cliente, consulteInstalação do cliente de cluster do ElastiCache para PHP.