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á.
Protegendo AWS IAM Roles Anywhere com um certificado privado
Barnali Singh, Amazon Web Services
Resumo
Esse padrão demonstra como implementar AWS IAM Roles Anywhere with Autoridade de Certificação Privada da AWS (CA privada da AWS) para permitir a autenticação segura e baseada em certificados para cargas de trabalho externas que acessam recursos. AWS A solução elimina a necessidade de chaves de acesso de longo prazo usando X.509 certificados para obter AWS credenciais temporárias. Esse é um padrão de segurança nativo da nuvem que inclui automação completa por meio de AWS CloudFormation modelos e scripts de shell, permitindo que as organizações implantem rapidamente a autenticação híbrida segura para aplicativos locais, CI/CD pipelines e sistemas externos.
Pré-requisitos e limitações
Pré-requisitos
Para implantação de AWS infraestrutura:
AWS CLI instalado e configurado com permissões administrativas
Permissões administrativas para IAM e CA privada da AWS serviços IAM Roles Anywhere
Para configuração do sistema cliente:
AWS CLI instalado no sistema cliente com as seguintes permissões:
acm-pca:IssueCertificateacm-pca:GetCertificate
OpenSSL instalado no sistema cliente
AWS Assistente de assinatura instalado em cada sistema cliente
Compreensão básica de X.509 certificados e conceitos de PKI
nota
O CloudFormation modelo gerencia automaticamente a criação de AWS recursos. O OpenSSL só é necessário nos sistemas externos que usarão certificados para acessar recursos. AWS
Limitações
O período de validade do certificado é limitado a um máximo de 10 anos para a CA raiz
Alterne os certificados do cliente regularmente. Recomendamos que você faça isso pelo menos uma vez por ano.
Limitação regional: a confiança é âncora e CA privada da AWS deve estar na mesma AWS região
Tamanho máximo do certificado: 16 KB para certificados de clientes
Versões do produto
AWS CLI versão 2.0 ou posterior
OpenSSL 1.1.1 ou posterior
AWS Signing Helper 1.4.0 ou posterior
CA privada da AWS, versão atual
IAM Roles Anywhere e, versão atual
Arquitetura
Pilha de tecnologias de destino
• CA privada da AWS - CA raiz para emissão de certificados
• IAM Roles Anywhere - serviço de assunção de Certificate-based funções
• Funções e políticas do IAM — Controle de acesso e permissões
• AWS Signing Helper - ferramenta de recuperação de Client-side credenciais
• OpenSSL - Geração de certificados e chaves
• CloudFormation - Automação de infraestrutura
Arquitetura de destino

Figura 1 Autenticação baseada em IAM Roles Anywhere certificado
A arquitetura consiste em:
Certificado atual - O sistema externo apresenta o X.509 certificado para AWS
Autenticar - IAM Roles Anywhere recebe o certificado e inicia a autenticação
Verificar - O Trust Anchor verifica o certificado em relação às autoridades de certificação confiáveis
Validar - CA privada da AWS valida a autenticidade e o status do certificado
Certificado válido - CA privada da AWS confirma que o certificado é válido e confiável
Assumir função - IAM Roles Anywhere permite que o sistema externo assuma a função configurada do IAM
Conceder acesso - O sistema externo recebe credenciais temporárias para acessar AWS recursos
Automação e escala
Esse padrão inclui automação completa por meio de:
• CloudFormation modelo para provisionamento AWS de recursos com permissões configuráveis do IAM
• Script de shell para geração de certificados e configuração de clientes
• Configuração parametrizada para vários ambientes e políticas personalizadas de IAM
• Geração de certificados em lote para vários clientes
• Instalação e configuração automatizadas do auxiliar de credenciais
Fluxo de trabalho
Estabeleça os AWS serviços básicos necessários para o uso da autenticação baseada em certificados. IAM Roles Anywhere
Crie e configure certificados e ferramentas de autenticação do lado do cliente para acesso seguro AWS .
Verifique a funcionalidade de autenticação baseada em certificado e estabeleça o monitoramento das operações contínuas.
Ferramentas
• CloudFormation - Automatiza a criação de PCA, Trust Anchor, IAM Role e Profile
• AWS CLI - Command-line interface para interação AWS de serviços
• OpenSSL - Gera solicitações de assinatura de certificados e gerencia certificados
• Assistente de AWS assinatura - troca certificados por credenciais temporárias AWS
• Bash/shell Scripts - Automatiza todo o processo de configuração
Repositório de código
Funções do AWS IAM em qualquer lugar com autoridade de certificação privada
Práticas recomendadas
Configure as políticas do IAM com base no princípio de privilégio mínimo usando o
--iam-policies parameterAlterne os certificados do cliente regularmente. Recomendamos que você faça isso anualmente.
Use validação forte de certificados em políticas de confiança
Implemente procedimentos de revogação de certificados
Monitore as datas de expiração do certificado
Épicos
| Tarefa | Description | Habilidades necessárias |
|---|---|---|
Implemente a CloudFormationinfraestrutura | Crie e implante o CloudFormation modelo que provisiona todos os AWS recursos necessários CA privada da AWS, incluindo Trust Anchor, função do IAM com políticas e IAM Roles Anywhere perfil apropriados. Configure parâmetros para nomenclatura do projeto, períodos de validade do certificado, duração da sessão e anexos da política do IAM para estabelecer a base da infraestrutura principal. | Arquiteto de nuvem, DevOps engenheiro |
Configurar a configuração da autoridade de certificação | Inicialize o CA privada da AWS instalando o certificado raiz, configurando modelos de certificado e estabelecendo a cadeia de confiança do certificado. Configure os períodos de validade do certificado, os algoritmos-chave e as extensões de certificado necessários para a IAM Roles Anywhere autenticação, a fim de garantir a infraestrutura de PKI adequada. | Administrador da AWS, administrador de nuvem |
Validar a configuração de recursos da &AWS; | Execute uma validação abrangente de todos os AWS recursos implantados para garantir a configuração e a conectividade adequadas. Verifique se o Trust Anchor está vinculado corretamente CA privada da AWS, a função do IAM tem as permissões apropriadas, o perfil está configurado corretamente e todos os recursos estão prontos para fluxos de trabalho active/ready de autenticação com base em certificados. | Administrador de sistemas da AWS, engenheiro de testes |
| Tarefa | Description | Habilidades necessárias |
|---|---|---|
Prepare o ambiente do cliente | Configure o ambiente do cliente tornando os scripts de implantação executáveis e garantindo as permissões adequadas. Configure o sistema local com as ferramentas e dependências necessárias, verifique a acessibilidade do script e estabeleça a base para os processos de geração e implantação de certificados. | DevOps engenheiro, administrador de sistemas da AWS |
Gerar solicitação de assinatura de certificado | Crie uma solicitação de assinatura de certificado (CSR) para o sistema cliente usando o OpenSSL ou ferramentas equivalentes. Configure os parâmetros do certificado, incluindo informações sobre assuntos, algoritmos-chave e extensões de certificado. Certifique-se de que o CSR atenda aos CA privada da AWS requisitos e contenha metadados apropriados para IAM Roles Anywhere autenticação. | Administrador de nuvem, DevOps engenheiro |
Emitir certificado de cliente via CA privada da AWS | Processe o CSR CA privada da AWS para emitir um certificado de cliente válido. Configure períodos de validade de certificados, modelos de certificados e garanta o estabelecimento adequado da cadeia de certificados. Verifique a emissão do certificado e baixe o certificado assinado para implantação no cliente. | Administrador da AWS, arquiteto de nuvem |
| Tarefa | Description | Habilidades necessárias |
|---|---|---|
Obtenha AWS credenciais temporárias | Execute o script auxiliar de credenciais para recuperar AWS credenciais temporárias usando o certificado de cliente e a chave privada configurados. Verifique se o processo de recuperação de credenciais funciona corretamente, valide o formato e os prazos de expiração da credencial e garanta a integração adequada com o IAM Roles Anywhere serviço para fluxos de trabalho de autenticação contínuos. | DevOps engenheiro, administrador de sistemas da AWS |
Teste o acesso aos AWS recursos | Execute testes abrangentes de acesso aos AWS recursos usando as credenciais temporárias obtidas. Execute vários AWS CLI comandos e chamadas de API para verificar a conectividade com serviços de destino, como Amazon S3, Amazon EC2 e. AWS Lambda Valide se as permissões estão alinhadas às políticas de função configuradas do IAM e documente os padrões de acesso bem-sucedidos. | Engenheiro de testes, administrador de nuvem |
Verifique a suposição e as permissões da função | Conduza uma validação completa do processo de assunção de funções e dos limites de permissão do IAM. Teste as operações permitidas e restritas para confirmar se o acesso com privilégios mínimos foi aplicado adequadamente. Verifique os limites de duração da sessão, os mecanismos de atualização de credenciais e garanta que a suposição da função siga as melhores práticas de segurança. | Administrador da AWS, engenheiro de testes |
Implemente monitoramento e registro | Configure monitoramento e registro abrangentes para o sistema de autenticação baseado em certificados. Configure o CloudTrail registro para trilhas de auditoria, implemente o monitoramento de expiração de certificados, configure alertas para falhas de autenticação e estabeleça painéis para rastrear padrões de uso e eventos de segurança em toda a IAM Roles Anywhere infraestrutura. | DevOps engenheiro, arquiteto de nuvem |
Solução de problemas
| Problema | Solução |
|---|---|
Falhas na validação do certificado — “Falha na validação do certificado” ou erros InvalidCertificate "” ao tentar a autenticação. | Etapas de resolução: • Verifique as datas de validade do certificado usando openssl x509 -in certificate.pem -dates -noout • Verifique se a configuração do Trust Anchor aponta para a CA privada correta • Certifique-se de que a chave privada corresponda ao certificado • Gere novamente o certificado se ele tiver sido emitido pela CA errada |
Erros de permissão negada do IAM — “Acesso negado” ou UnauthorizedOperation "" ao acessar AWS recursos apesar da autenticação bem-sucedida | Etapas de resolução: • Revise e expanda as políticas de função do IAM para incluir as permissões necessárias • Verifique se a política de confiança inclui rolesanywhere.amazonaws.com como uma entidade confiável • Verifique se a configuração do ARN do perfil corresponde aos recursos implantados • Implementar um mecanismo de atualização de credenciais para processos de longa execução |
Recursos relacionados
Mais informações
Esse padrão é ideal para organizações com arquiteturas de nuvem híbrida, CI/CD pipelines em execução externa AWS ou qualquer sistema externo que exija acesso seguro AWS . A abordagem baseada em certificados fornece melhor segurança do que as chaves de acesso de longo prazo e permite o gerenciamento centralizado de certificados por meio do. CA privada da AWS
Permissões configuráveis do IAM — A solução oferece suporte à configuração flexível da política do IAM por meio de--iam-policies parameter:
Padrão:
ReadOnlyAccesspara implantação inicial seguraPersonalizado: especifique ARNs de política separados por vírgula para casos de uso específicos. Por exemplo,
S3ReadOnlyAccess,EC2ReadOnlyAccess, ou políticas personalizadas. Oferece suporte a várias políticas para requisitos complexos de permissão.
Exemplos de uso:
# Default read-only access ./deploy.sh # S3-only access ./deploy.sh --iam-policies "arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess" # Multiple services ./deploy.sh --iam-policies "arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess,arn:aws:iam::aws:policy/AmazonEC2ReadOnlyAccess"