Configurações de segurança e perfis do IAM - AWS Elastic Beanstalk

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

Configurações de segurança e perfis do IAM

O eb migrate comando gerencia as configurações AWS de segurança por meio de funções do IAM, perfis de instância e funções de serviço. A compreensão desses componentes garante o controle de acesso adequado e a conformidade com a segurança durante a migração.

Configuração de perfil de instância

Um perfil de instância serve como um contêiner para uma função do IAM que o Elastic Beanstalk EC2 anexa às instâncias em seu ambiente. Ao executar eb migrate, você pode especificar um perfil de instância personalizado:

PS C:\migrations_workspace> eb migrate --instance-profile "CustomInstanceProfile"

Se você não especificar um perfil de instância, o eb migrate criará um padrão com as seguintes permissões:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::elasticbeanstalk-*", "arn:aws:s3:::elasticbeanstalk-*/*" ] } ] }

Gerenciamento de perfis de serviço

Uma função de serviço permite que o Elastic Beanstalk gerencie recursos em AWS seu nome. Especifique um perfil de serviço personalizado durante a migração com o seguinte comando:

PS C:\migrations_workspace> eb migrate --service-role "CustomServiceRole"

Se não for especificado, eb migrate criará um perfil de serviço padrão chamada aws-elasticbeanstalk-service-role, com uma política de confiança que permite ao Elastic Beanstalk assumir o perfil. Esse perfil de serviço é essencial para que o Elastic Beanstalk monitore a integridade do ambiente e realize atualizações gerenciadas de plataforma. O perfil de serviço requer duas políticas gerenciadas:

  • AWSElasticBeanstalkEnhancedHealth: permite que o Elastic Beanstalk monitore a integridade do ambiente e da instância usando o sistema aprimorado de relatórios de integridade

  • AWSElasticBeanstalkManagedUpdates: permite que o Elastic Beanstalk realize atualizações gerenciadas da plataforma, incluindo a atualização dos recursos do ambiente quando uma nova versão da plataforma estiver disponível

Com essas políticas, o perfil de serviço tem permissões para:

  • Criar e gerenciar grupos do Auto Scaling

  • Criar e gerenciar Application Load Balancers

  • Carregar registros para a Amazon CloudWatch

  • Gerenciar EC2 instâncias

Para obter mais informações sobre perfis de serviço, consulte Função de serviço do Elastic Beanstalk no Guia do desenvolvedor do Elastic Beanstalk.

Configuração do security group

O comando eb migrate configura grupos de segurança automaticamente com base em associações de sites do IIS. Por exemplo, se seu ambiente de origem tiver sites usando as portas 80, 443 e 8081, os seguintes resultados de configuração:

<site name="Default Web Site"> <bindings> <binding protocol="http" bindingInformation="*:80:" /> <binding protocol="https" bindingInformation="*:443:" /> </bindings> </site> <site name="InternalAPI"> <bindings> <binding protocol="http" bindingInformation="*:8081:" /> </bindings> </site>

O processo de migração conclui as seguintes ações:

  • Cria um grupo de segurança do balanceador de carga que permite tráfego de entrada nas portas 80 e 443 da Internet (0.0.0.0/0)

  • Cria um grupo EC2 de segurança que permite o tráfego do balanceador de carga

  • Configura portas adicionais (como 8081) se --copy-firewall-config for especificado

Por padrão, o Application Load Balancer é configurado com acesso público pela Internet. Se precisar personalizar esse comportamento, como restringir o acesso a intervalos de IP específicos ou usar um balanceador de carga privado, substitua a configuração padrão da VPC e do grupo de segurança usando o parâmetro --vpc-config:

PS C:\migrations_workspace> eb migrate --vpc-config vpc-config.json

Por exemplo, a configuração vpc-config.json a seguir cria um balanceador de carga privado em uma sub-rede privada:

{ "id": "vpc-12345678", "publicip": "false", "elbscheme": "internal", "ec2subnets": ["subnet-private1", "subnet-private2"], "elbsubnets": ["subnet-private1", "subnet-private2"] }

Para obter mais informações sobre as opções de configuração da VPC, consulte Configuração de VPC.

Integração de certificados SSL

Ao migrar sites com ligações HTTPS, integre certificados SSL por meio AWS Certificate Manager do (ACM):

PS C:\migrations_workspace> eb migrate --ssl-certificates "arn:aws:acm:region:account:certificate/certificate-id"

Essa configuração conclui as seguintes ações:

  • Associa o certificado ao Application Load Balancer

  • Mantém a terminação HTTPS no balanceador de carga

  • Preserva a comunicação HTTP interna entre o balanceador de carga e as instâncias EC2

Autenticação do Windows

Para aplicações que usam a Autenticação do Windows, eb migrate preserva as configurações de autenticação no web.config da aplicação, da seguinte maneira:

<configuration> <system.webServer> <security> <authentication> <windowsAuthentication enabled="true"> <providers> <add value="Negotiate" /> <add value="NTLM" /> </providers> </windowsAuthentication> </authentication> </security> </system.webServer> </configuration>
Importante

O comando eb migrate não copia perfis ou contas de usuário do seu ambiente de origem para as instâncias de destino do Elastic Beanstalk. Todas as contas de usuário ou grupos personalizados que você criou no servidor de origem precisarão ser recriados no ambiente de destino após a migração.

Contas integradas do Windows, como IUSR e grupos como IIS_IUSRS, bem como todas as outras contas e grupos integrados, são incluídos por padrão nas instâncias do Windows Server do destino. Para obter mais informações sobre contas e grupos internos do IIS, consulte Sobre contas de usuário e grupo incorporadas no IIS na documentação da Microsoft.

Se sua aplicação depende de contas de usuário personalizadas do Windows ou da integração com o Active Directory, você precisará configurar esses aspectos separadamente após a conclusão da migração.

Práticas recomendas e solução de problemas

Gerenciamento de perfis

Implemente as melhores práticas AWS do IAM ao gerenciar funções em seus ambientes do Elastic Beanstalk:

Criação e gerenciamento de perfis
Monitoramento e auditoria

Ative AWS CloudTrail para monitorar o uso da função:

  • Siga o Guia do usuário do AWS CloudTrail

  • Configure a integração de CloudWatch registros para monitoramento em tempo real

  • Configure alertas para chamadas de API não autorizadas

Processo regular de revisão

Estabeleça um ciclo de revisão trimestral para realizar as seguintes tarefas:

  • Auditar permissões não utilizadas usando o IAM Access Analyzer

  • Remover permissões desatualizadas

  • Atualizar funções com base nos princípios de privilégios mínimos

Gerenciamento de certificado

Implemente essas práticas para SSL/TLS certificados em seus ambientes do Elastic Beanstalk:

Ciclo de vida do certificado
Padrões de segurança
  • Usar TLS 1.2 ou posterior

  • Seguir políticas de segurança da AWS para receptores HTTPS

  • Implementar o HTTP Strict Transport Security (HSTS), se necessário

Gerenciamento de grupos de segurança

Implemente estas melhores práticas de grupos de segurança:

Gerenciamento de regras
Auditorias regulares

Estabeleça revisões mensais para realizar as seguintes tarefas:

  • Identificar e remover regras não utilizadas

  • Valide os source/destination requisitos

  • Verificar se há regras sobrepostas

Registro em log e monitoramento

Para um monitoramento de segurança eficaz, configure os seguintes logs:

Registros de eventos do Windows em EC2 instâncias
# Review Security event log PS C:\migrations_workspace> Get-EventLog -LogName Security -Newest 50 # Check Application event log PS C:\migrations_workspace> Get-EventLog -LogName Application -Source "IIS*"
CloudWatch Integração de registros

Configure o agente de CloudWatch registros para transmitir registros de eventos do Windows CloudWatch para monitoramento e alertas centralizados.

Para problemas persistentes, reúna esses registros e entre em contato AWS Support com as seguintes informações:

  • ID do ambiente

  • ID de implantação (se aplicável)

  • Mensagens de erro relevantes

  • Cronograma das alterações de segurança