Proteger os buckets de armazenamento de objetos do Lightsail
O armazenamento de objetos do Amazon Lightsail oferece uma série de recursos de segurança a serem considerados no desenvolvimento e na implementação de suas próprias políticas de segurança. As melhores práticas a seguir são diretrizes gerais e não representam uma solução completa de segurança. Como essas melhores práticas podem não ser adequadas ou suficientes para o seu ambiente, trate-as como considerações úteis em vez de prescrições.
Índice
Práticas recomendadas de segurança preventiva
As seguintes práticas recomendadas podem ajudar a evitar incidentes de segurança com buckets do Lightsail.
Implemente o acesso de privilégio mínimo
Ao conceder permissões, você decide quem receberá quais permissões para quais recursos do Lightsail. Você habilita ações específicas que quer permitir nesses atributos. Portanto, você deve conceder apenas as permissões necessárias para executar uma tarefa. A implementação do acesso de privilégio mínimo é fundamental para reduzir o risco de segurança e o impacto que pode resultar de erros ou usuários mal-intencionados.
Para obter mais informações sobre como criar uma política do IAM para gerenciar buckets, consulte Política do IAM para gerenciar buckets. Para mais informações sobre as ações do Amazon S3 suportadas por buckets do Lightsail, consulte Actions for object storage (Ações para o armazenamento de objetos) na referência de API do Amazon Lightsail.
Verificar se seus buckets do Lightsail não estão acessíveis publicamente
Por padrão, os buckets e objetos são privados. Mantenha seu bucket privado com a permissão de acesso ao bucket definida como All objects are private (Todos os objetos são privados). Para a maioria dos casos de uso, você não precisa tornar público seu bucket ou objetos individuais. Para obter mais informações, consulte Configure access permissions for individual objects in a bucket.
No entanto, se estiver usando seu bucket para hospedar mídia para seu site ou aplicação, talvez seja necessário tornar público seu bucket ou objetos individuais em determinados cenários. Você pode configurar uma das seguintes opções para tornar público seu bucket ou objetos individuais:
-
Se apenas alguns dos objetos em um bucket precisarem ser públicos (somente leitura) para qualquer pessoa na Internet, altere a permissão de acesso ao bucket para Individual objects can be made public and read-only (Objetos individuais podem ser configurados como públicos e somente leitura), e altere apenas os objetos que precisam ser públicos para Public (read-only) (Público [somente leitura]). Essa opção mantém o bucket privado, mas oferece a opção de tornar públicos objetos individuais. Não torne um objeto individual público se ele contiver informações sigilosas ou confidenciais que você não deseja que fiquem publicamente acessíveis. Se tornar objetos individuais públicos, você deverá validar periodicamente a acessibilidade pública de cada objeto individual.
-
Se todos os objetos no bucket precisarem ser públicos (somente leitura) para qualquer pessoa na Internet, altere a permissão de acesso ao bucket para All objects are public and read-only (Todos os objetos são públicos e somente leitura). Não use essa opção se algum de seus objetos no bucket contiver informações sigilosas ou confidenciais.
-
Se tiver alterado previamente um bucket ou objetos individuais para o modo público, você poderá alterar rapidamente o bucket e todos os seus objetos para o modo privado alterando a permissão de acesso ao bucket para All objects are private (Todos os objetos são privados).
Habilitar o bloqueio de acesso público no Amazon S3
Os recursos de armazenamento de objetos do Lightsail levam em consideração as permissões de acesso ao bucket do Lightsail e as configurações de bloqueio de acesso público por conta do Amazon S3 ao permitir ou negar acesso público. Com o bloqueio de acesso público do Amazon S3 no nível da conta, administradores de contas e proprietários de bucket podem limitar centralmente o acesso público a seus buckets do Amazon S3 e do Lightsail. O bloqueio de acesso público pode tornar privados todos os buckets do Amazon S3 e do Lightsail, independentemente de como os recursos sejam criados e independentemente das permissões individuais de bucket e objeto que possam ter sido configuradas. Para obter mais informações, consulte Block public access for buckets.
Anexe instâncias a buckets para conceder acesso programático completo
Anexar uma instância a um bucket de armazenamento de objetos do Lightsail é a maneira mais segura de fornecer acesso ao bucket. A funcionalidade Resource access (Acesso ao recurso), que é como você anexa uma instância a um bucket, permite que a instância tenha acesso programático completo ao bucket. Com esse método, você não precisa armazenar as credenciais do bucket diretamente na instância ou na aplicação, e não precisa alternar periodicamente as credenciais. Por exemplo, alguns plugins do WordPress podem acessar um bucket ao qual a instância tem acesso. Para obter mais informações, consulte Configurar acesso a recursos para um bucket e Tutorial: Connect a bucket to your WordPress instance.
No entanto, se a aplicação não estiver em uma instância do Lightsail, você pode criar e configurar chaves de acesso ao bucket. As chaves de acesso ao bucket são credenciais de longo prazo que não são alternadas automaticamente.
Você pode criar e usar chaves de acesso para permitir que aplicações ou plugins tenham acesso programático total a objetos em seu bucket. Se usar uma chave de acesso com seu bucket, você deve alternar suas chaves periodicamente e fazer o inventário das chaves existentes. Confirme se a data na qual uma chave de acesso foi usada pela última vez e a Região da AWS na qual ela foi usada correspondem a suas expectativas de como a chave deve ser usada. A data em que a chave de acesso foi usada pela última vez é exibida no console do Lightsail; na seção Access keys (Chaves de acesso) da guia Permissions (Permissões) da página de gerenciamento de um bucket. Exclua as chaves de acesso que não estejam sendo usadas.
Se compartilhar acidentalmente sua chave de acesso secreta com o público, você deverá excluí-la e criar uma nova. Você pode ter no máximo duas chaves de acesso por bucket. Mesmo que você possa ter duas chaves de acesso diferentes ao mesmo tempo, ter uma chave de acesso não utilizada em seu bucket é útil para quando você precisa alternar uma chave com tempo mínimo de inatividade. Para alternar uma chave de acesso, crie uma nova chave, configure-a no software e teste-a, excluindo em seguida a chave anterior. A exclusão de uma chave de acesso é definitiva, e ela não pode ser restaurada. Ela só pode ser substituída por uma nova chave de acesso. Para obter mais informações, consulte Criar chaves de acesso de bucket.
Usar o acesso entre contas para permitir que outras contas da AWS tenham acesso a objetos em seu bucket
Você pode usar o acesso entre contas para tornar objetos em um bucket acessíveis a um indivíduo específico que tenha uma conta da AWS sem precisar tornar públicos o bucket e seus objetos. Se tiver configurado o acesso entre contas, certifique-se de que os IDs das contas listados são as contas corretas às quais deseja dar acesso aos objetos em seu bucket. Para obter mais informações, consulte Configurar o acesso entre contas para um bucket.
Criptografia de dados
O Lightsail executa criptografia no lado do servidor com chaves gerenciadas pela Amazon e criptografia de dados em trânsito, aplicando HTTPS (TLS). A criptografia no lado do servidor ajuda a reduzir o risco aos seus dados criptografando os dados com uma chave armazenada em um serviço distinto. Além disso, a criptografia de dados em trânsito ajuda a evitar que potenciais invasores espionem ou manipulem tráfego de rede usando ataques do tipo “person-in-the-middle” ou similares.
Habilitar o versionamento
Versionamento é um meio de manter diversas variantes de um objeto no mesmo bucket. O versionamento pode ser usado para preservar, recuperar e restaurar todas as versões de cada objeto armazenado no bucket do Lightsail. Com o versionamento, você pode se recuperar, facilmente, de ações não intencionais do usuário e de falhas de aplicativo. Para obter mais informações, consulte Enable and suspend bucket object versioning.
Práticas recomendadas de auditoria e monitoramento
As seguintes práticas recomendadas podem ajudar a detectar possíveis pontos fracos e incidentes de segurança para buckets do Lightsail.
Ativar o registro de acesso em log e realizar auditorias periódicas de segurança e acesso
O registro de acesso em log fornece registros detalhados sobre as solicitações que são feitas a um bucket. Essa informação pode incluir o tipo de solicitação (GET
, PUT
), os recursos que foram especificados na solicitação e a hora e data em que a solicitação foi processada. Habilite o registro de acesso em log para um bucket e realize periodicamente uma auditoria de segurança e acesso para identificar as entidades que estão acessando seu bucket. Por padrão, o Lightsail não coleta logs de acesso para seus buckets. Você deve habilitar manualmente o registro de acesso em log. Para obter mais informações, consulte Bucket access logs e Enable bucket access logging.
Identificar, marcar e auditar seus buckets do Lightsail
A identificação de seus ativos de TI é um aspecto essencial de governança e segurança. Para avaliar seus procedimentos de segurança e atuar em possíveis pontos fracos, é necessário ter visibilidade de todos os seus buckets do Lightsail.
Use a marcação para identificar recursos sensíveis em termos de segurança ou auditoria, depois use essas etiquetas quando precisar procurar esses recursos. Para obter mais informações, consulte Etiquetas.
Implementar monitoramento usando ferramentas de monitoramento da AWS
O monitoramento é uma parte importante da manutenção da confiabilidade, segurança, disponibilidade e performance dos buckets do Lightsail e outros recursos. Você pode monitorar e criar alarmes de notificação para as métricas de bucket: Bucket size (BucketSizeBytes
) (Tamanho do bucket) e Number of objects
(NumberOfObjects) (Número de objetos) no Lightsail. Por exemplo, talvez você queira receber notificações quando o tamanho do seu bucket aumentar ou diminuir para um tamanho específico, ou quando o número de objetos no seu bucket aumente ou diminua para um número específico. Para obter mais informações, consulte Criar alarmes de métricas de bucket.
Usar o AWS CloudTrail
O AWS CloudTrail fornece um registro das ações executadas por um usuário, uma função ou um produto da AWS no Lightsail. Você pode usar as informações coletadas pelo CloudTrail para determinar a solicitação que foi feita para o Lightsail, o endereço IP do qual a solicitação foi feita, quem fez a solicitação, quando ela foi feita e detalhes adicionais. Por exemplo, você pode identificar entradas do CloudTrail para ações que afetam o acesso a dados, em particular CreateBucketAccessKey
, GetBucketAccessKeys
, DeleteBucketAccessKey
, SetResourceAccessForBucket
e UpdateBucket
. Quando você configura sua conta da AWS, o CloudTrail é ativado por padrão. Você pode visualizar eventos recentes no console do CloudTrail. Para criar um registro contínuo de atividades e eventos para seus buckets do Lightsail, você pode criar uma trilha no console do CloudTrail. Para obter mais informações, consulte Registro eventos de dados em logs para trilhas no Guia do usuário do AWS CloudTrail.
Monitorar as recomendações de segurança da AWS
Monitore ativamente o endereço de e-mail registrado como principal em sua AWS. A AWS usará esse e-mail para entrar em contato com você sobre os problemas de segurança que surgirem e que possam afetar você.
Problemas operacionais da AWS com grande impacto são publicados no AWS Service Health Dashboard