Pilar Segurança da Lente do Well-Architected para o Amazon ElastiCache - Amazon ElastiCache

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á.

Pilar Segurança da Lente do Well-Architected para o Amazon ElastiCache

O foco do pilar Segurança está na proteção de informações e sistemas. Os principais tópicos incluem confidencialidade e integridade dos dados, identificação e gerenciamento de quem pode fazer o quê com o gerenciamento baseado em privilégios, proteção de sistemas e estabelecimento de controles para detectar eventos de segurança.

SEG 1: Quais etapas você está tomando para controlar o acesso autorizado aos dados do ElastiCache?

Introdução: todos os clusters do ElastiCache são projetados para serem acessados de instâncias do Amazon Elastic Compute Cloud em uma VPC, de funções sem servidor (AWS Lambda) ou de contêineres (Amazon Elastic Container Service). O cenário mais comum é acessar um cluster do ElastiCache de uma instância do Amazon Elastic Compute Cloud na mesma Amazon VPC (Amazon Virtual Private Cloud). Antes de poder se conectar a um cluster usando uma instância do Amazon EC2, você deve autorizar a instância do Amazon EC2 a acessar o cluster. Para acessar um cluster do ElastiCache em execução em uma VPC, é necessário conceder entrada de rede ao cluster.

Benefício: a entrada de rede no cluster é controlada por meio de grupos de segurança da VPC. Um grupo de segurança atua como firewall virtual para as instâncias do Amazon EC2 a fim de controlar o tráfego de entrada e saída. As regras de entrada controlam o tráfego de entrada para a instância e as regras de saída controlam o tráfego de saída da instância. No caso do ElastiCache, ao iniciar um cluster é necessário associar um grupo de segurança. Isso garante que as regras de tráfego de entrada e saída estejam em vigor para todos os nós que compõem o cluster. Além disso, o ElastiCache está configurado para ser implantado exclusivamente em sub-redes privadas, de forma que elas só possam ser acessadas por meio de redes privadas da VPC.

  • [Obrigatório] O grupo de segurança associado ao seu cluster controla a entrada na rede e o acesso ao cluster. Por padrão, um grupo de segurança não terá nenhuma regra de entrada definida e, portanto, nenhum caminho de entrada para o ElastiCache. Para habilitar isso, configure uma regra de entrada no grupo de segurança especificando o endereço/intervalo de IP de origem, o tráfego do tipo TCP e a porta do cluster do ElastiCache (porta padrão 6379 para o ElastiCache para Valkey e Redis OSS, por exemplo). Embora seja possível permitir um conjunto muito amplo de origens de entrada, como todos os recursos em uma VPC (0.0.0.0/0), é recomendável ser o mais granular possível ao definir as regras de entrada, como autorizar somente o acesso de entrada a clientes Valkey ou Redis OSS em execução em instâncias do Amazon EC2 associadas a um grupo de segurança específico.

    [Recursos]:

  • [Obrigatório] As políticas do AWS Identity and Access Management podem ser atribuídas a funções do AWS Lambda que permitam acessar os dados do ElastiCache. Para habilitar esse atributo, crie uma função de execução do IAM com a permissão AWSLambdaVPCAccessExecutionRole e atribua o perfil à função AWS Lambda.

    [Recursos]: Configurar uma função do Lambda para acessar o Amazon ElastiCache em uma Amazon VPC: Tutorial: Configurar uma função do Lambda para acessar o Amazon ElastiCache em uma Amazon VPC

SEG 2: Suas aplicações exigem autorização adicional para o ElastiCache além dos controles baseados em rede?

Introdução: em cenários em que é necessário restringir ou controlar o acesso aos clusters individualmente para cada cliente, é recomendável fazer a autenticação por meio do comando AUTH. Os tokens de autenticação do ElastiCache, com gerenciamento opcional de usuários e grupos de usuários, possibilitam que o ElastiCache exija uma senha antes de permitir que os clientes executem comandos e chaves de acesso, aumentando assim a segurança do plano de dados.

Benefício: para ajudar a manter os dados em segurança, o ElastiCache fornece mecanismos de proteção contra o acesso não autorizado aos dados. Isso inclui impor que o AUTH do controle de acesso baseado em perfil (RBAC) ou um token de AUTH (senha) sejam usados pelos clientes para que se conectem ao ElastiCache antes de executar comandos autorizados.

  • [Ideal] No ElastiCache versão 6.x e superior para Redis OSS, e ElastiCache versão 7.2 e superior para Valkey, defina os controles de autenticação e autorização definindo grupos de usuários, usuários e strings de acesso. Atribua usuários a grupos de usuários, depois atribua grupos de usuários a clusters. Para utilizar o RBAC, ele deve ser selecionado na criação do cluster e a criptografia em trânsito deve estar habilitada. Use um cliente Valkey ou Redis OSS compatível com TLS para poder aproveitar o RBAC.

    [Recursos]:

  • [Ideal] Em versões do ElastiCache anteriores à 6.x para Redis OSS, além de definir token/senha fortes e manter uma política de senha rígida para AUTH, a prática recomendada é alternar a senha/token. O ElastiCache pode gerenciar até dois (2) tokens de autenticação por vez. Você também pode modificar o cluster para exigir explicitamente o uso de tokens de autenticação.

    [Recursos]: Modificação do token AUTH em um cluster existente do ElastiCache

SEG 3: Existe o risco de que os comandos possam ser executados acidentalmente, causando perda ou falha de dados?

Introdução: há vários comandos do Valkey ou Redis OSS que podem ter impactos adversos nas operações se executados por engano ou por agentes mal-intencionados. Esses comandos podem ter consequências não intencionais do ponto de vista da performance e da segurança dos dados. Por exemplo, um desenvolvedor pode chamar rotineiramente o comando FLUSHALL em um ambiente de desenvolvimento e, devido a um erro, pode tentar inadvertidamente chamar esse comando em um sistema de produção, resultando em perda acidental de dados.

Benefício: a partir do ElastiCache versão 5.0.3 para Redis OSS, é possível renomear certos comandos que podem atrapalhar sua workload. Renomear os comandos pode ajudar a evitar que sejam executados acidentalmente no cluster.

SEG 4: Como garantir a criptografia de dados em repouso com o ElastiCache?

Introdução: embora o ElastiCache seja um datastore em memória, é possível criptografar qualquer dado que possa ser persistido (no armazenamento) como parte das operações padrão do cluster. Isso inclui backups programados e manuais gravados no Amazon S3, bem como dados salvos no armazenamento em disco como resultado de operações de sincronização e troca. Os tipos de instância nas famílias M6g e R6g também oferecem criptografia sempre ativa em memória.

Benefício: o ElastiCache fornece criptografia em repouso opcional para aumentar a segurança dos dados.

  • [Obrigatório] A criptografia em repouso só pode ser habilitada em um cluster do ElastiCache (grupo de replicação) durante sua criação. Um cluster existente não pode ser modificado para começar a criptografar dados em repouso. Por padrão, o ElastiCache fornecerá e gerenciará as chaves usadas na criptografia em repouso.

    [Recursos]:

  • [Ideal] Utilize os tipos de instância do Amazon EC2 que criptografam dados enquanto eles estão na memória (como M6g ou R6g). Sempre que possível, considere gerenciar suas próprias chaves para criptografia em repouso. Para ambientes de segurança de dados mais rigorosos, o AWS Key Management Service (KMS) pode ser usado para autogerenciar as chaves mestras de cliente (CMK). Por meio da integração do ElastiCache com o AWS Key Management Service, você pode criar, possuir e gerenciar as chaves usadas para criptografia de dados em repouso em seu cluster do ElastiCache.

    [Recursos]:

SEG 5: Como criptografar dados em trânsito com o ElastiCache?

Introdução: é um requisito comum evitar que os dados sejam comprometidos em trânsito. Isso representa dados dentro de componentes de um sistema distribuído, bem como entre clientes de aplicações e nós de cluster. O ElastiCache oferece suporte a esse requisito ao permitir a criptografia de dados em trânsito entre clientes e cluster e entre os próprios nós do cluster. Os tipos de instância nas famílias M6g e R6g também oferecem criptografia sempre ativa em memória.

Benefício: a criptografia em trânsito do Amazon ElastiCache é um atributo opcional 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.

  • [Obrigatório] A criptografia em trânsito só pode ser habilitada em um cluster (grupo de replicação) durante sua criação. Observe que, devido ao processamento adicional necessário para criptografar/descriptografar dados, a implementação da criptografia em trânsito vai afetar a performance. Para entender o impacto, é recomendável comparar a workload antes e depois de ativar a criptografia em trânsito.

    [Recursos]:

SEG 6: Como restringir o acesso aos recursos do ambiente de gerenciamento?

Introdução: as políticas do IAM e o ARN habilitam controles de acesso refinados no ElastiCache para Valkey e Redis OSS, permitindo um controle mais rígido para gerenciar a criação, modificação e exclusão de clusters do ElastiCache para Redis.

Benefício: o gerenciamento dos recursos do Amazon ElastiCache, como grupos de replicação, nós etc., pode ser restrito a contas da AWS que têm permissões específicas com base nas políticas do IAM, aumentando a segurança e a confiabilidade dos recursos.

SEG 7: Como detectar e responder a eventos de segurança?

Introdução: quando implantado com o RBAC habilitado, o ElastiCache exporta métricas do CloudWatch para notificar os usuários sobre eventos de segurança. Essas métricas ajudam a identificar tentativas fracassadas de autenticação, acesso a chaves ou execução de comandos para os quais os usuários do RBAC não têm autorização.

Além disso, os recursos de produtos e serviços da AWS ajudam a proteger a workload geral automatizando as implantações e registrando em log todas as ações e modificações para revisão/auditoria posterior.

Benefício: ao monitorar eventos, sua organização consegue responder de acordo com seus requisitos, políticas e procedimentos. Automatizar o monitoramento e as respostas a esses eventos de segurança fortalece sua postura geral de segurança.