Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Asegurar AWS IAM Roles Anywhere con un certificado privado
Barnali Singh, Amazon Web Services
Resumen
Este patrón demuestra cómo implementar AWS IAM Roles Anywhere with AWS Private Certificate Authority (Autoridad de certificación privada de AWS) para permitir una autenticación segura y basada en certificados para las cargas de trabajo externas que acceden a los recursos. AWS La solución elimina la necesidad de claves de acceso a largo plazo mediante el uso de X.509 certificados para obtener credenciales temporales. AWS Se trata de un patrón de seguridad nativo de la nube que incluye una automatización completa mediante AWS CloudFormation plantillas y scripts de shell, lo que permite a las organizaciones implementar rápidamente la autenticación híbrida segura para aplicaciones locales, CI/CD canalizaciones y sistemas externos.
Requisitos previos y limitaciones
Requisitos previos
Para AWS el despliegue de infraestructuras:
AWS CLI instalado y configurado con permisos administrativos
Permisos administrativos para IAM IAM Roles Anywhere y servicios Autoridad de certificación privada de AWS
Para la configuración del sistema cliente:
AWS CLI instalado en el sistema cliente con los siguientes permisos:
acm-pca:IssueCertificateacm-pca:GetCertificate
OpenSSL instalado en el sistema cliente
AWS Signing Helper está instalado en cada sistema cliente
Comprensión básica de los conceptos de X.509 certificados y PKI
nota
La CloudFormation plantilla gestiona automáticamente la creación AWS de recursos. OpenSSL solo es necesario en los sistemas externos que utilizarán certificados para acceder a los recursos. AWS
Limitaciones
El período de validez del certificado está limitado a un máximo de 10 años para la CA raíz
Cambie los certificados de los clientes con regularidad. Le recomendamos que lo haga al menos una vez al año.
Limitación regional: confíe en las anclas y Autoridad de certificación privada de AWS debe estar en la misma AWS región
Tamaño máximo del certificado: 16 KB para los certificados de clientes
Versiones de producto
AWS CLI versión 2.0 o posterior
OpenSSL 1.1.1 o posterior
AWS Signing Helper 1.4.0 o posterior
Autoridad de certificación privada de AWS, versión actual
IAM Roles Anywhere e, versión actual
Arquitectura
Pila de tecnología de destino
• Autoridad de certificación privada de AWS - CA raíz para la emisión de certificados
• IAM Roles Anywhere - servicio de asunción de Certificate-based roles
• Funciones y políticas de IAM: control de acceso y permisos
• AWS Signing Helper: herramienta de recuperación de Client-side credenciales
• OpenSSL: generación de certificados y claves
• CloudFormation - Automatización de infraestructuras
Arquitectura de destino

Figura 1: Autenticación basada en IAM Roles Anywhere certificados
La arquitectura se compone de:
Certificado actual: el sistema externo presenta el X.509 certificado a AWS
Autenticar: IAM Roles Anywhere recibe el certificado e inicia la autenticación
Verificar: Trust Anchor verifica el certificado con las autoridades certificadoras confiables
Validar: Autoridad de certificación privada de AWS valida la autenticidad y el estado del certificado
Certificado válido: Autoridad de certificación privada de AWS confirma que el certificado es válido y confiable
Asumir el rol: IAM Roles Anywhere permite que el sistema externo asuma el rol de IAM configurado
Otorgar acceso: el sistema externo recibe credenciales temporales para acceder a los recursos AWS
Automatización y escala
Este patrón incluye la automatización completa mediante:
• CloudFormation plantilla para el aprovisionamiento AWS de recursos con permisos de IAM configurables
• Secuencia de comandos de shell para la generación de certificados y la configuración del cliente
• Configuración parametrizada para múltiples entornos y políticas de IAM personalizadas
• Generación de certificados por lotes para varios clientes
• Instalación y configuración automatizadas del asistente de credenciales
Flujo de trabajo
Establezca los AWS servicios básicos necesarios para utilizar la autenticación basada en certificados. IAM Roles Anywhere
Cree y configure certificados y herramientas de autenticación del lado del cliente para un acceso seguro. AWS
Verifique la funcionalidad de autenticación basada en certificados y establezca la supervisión de las operaciones en curso.
Tools (Herramientas)
• CloudFormation - Automatiza la creación de PCA, Trust Anchor, IAM Role y Profile
• AWS CLI - Command-line interfaz para la interacción de servicios AWS
• OpenSSL: genera solicitudes de firma de certificados y administra los certificados
• Asistente de AWS firma: intercambia certificados por credenciales temporales AWS
• Bash/shell Secuencias de comandos: automatiza todo el proceso de configuración
Repositorio de código
Funciones de AWS IAM en cualquier lugar con una autoridad de certificación privada
Prácticas recomendadas
Configure las políticas de IAM según el principio del mínimo privilegio mediante el
--iam-policies parameterCambie los certificados de los clientes con regularidad. Le recomendamos que lo haga anualmente.
Utilice una sólida validación de certificados en las políticas de confianza
Implemente procedimientos de revocación de certificados
Controle las fechas de vencimiento de los certificados
Epics
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Implemente CloudFormation la infraestructura | Cree e implemente la CloudFormation plantilla que aprovisione todos los AWS recursos necesarios Autoridad de certificación privada de AWS, incluidos Trust Anchor, la función de IAM, con las políticas y el IAM Roles Anywhere perfil adecuados. Configure los parámetros para la denominación del proyecto, los períodos de validez de los certificados, la duración de las sesiones y los anexos a las políticas de IAM para establecer la base de la infraestructura principal. | Arquitecto e ingeniero de nube DevOps |
Configure la configuración de la autoridad de certificación | Autoridad de certificación privada de AWS Para inicializarla, instale el certificado raíz, configure las plantillas de certificados y establezca la cadena de confianza de los certificados. Configure los períodos de validez de los certificados, los algoritmos clave y las extensiones de certificado necesarios para la IAM Roles Anywhere autenticación a fin de garantizar una infraestructura de PKI adecuada. | Administrador de la nube, administrador de AWS |
Validar la configuración de recursos de &AWS; | Realice una validación exhaustiva de todos los AWS recursos desplegados para garantizar una configuración y conectividad adecuadas. Compruebe que Trust Anchor esté correctamente vinculada a Autoridad de certificación privada de AWS, que la función de IAM tenga los permisos adecuados, que el perfil esté correctamente configurado y que todos los recursos estén en buen active/ready estado para los flujos de trabajo de autenticación basados en certificados. | Administrador de sistemas de AWS, ingeniero de pruebas |
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Prepare el entorno del cliente | Configure el entorno del cliente haciendo que los scripts de despliegue sean ejecutables y garantizando los permisos adecuados. Configure el sistema local con las herramientas y dependencias necesarias, compruebe la accesibilidad de los scripts y establezca las bases para los procesos de generación e implementación de certificados. | DevOps ingeniero, administrador de sistemas de AWS |
Genere una solicitud de firma de certificado | Cree una solicitud de firma de certificado (CSR) para el sistema cliente mediante OpenSSL o herramientas equivalentes. Configure los parámetros del certificado, incluida la información del asunto, los algoritmos clave y las extensiones del certificado. Asegúrese de que la CSR cumpla con Autoridad de certificación privada de AWS los requisitos y contenga los metadatos adecuados para la IAM Roles Anywhere autenticación. | Administrador de la nube, ingeniero DevOps |
Emita el certificado de cliente a través de Autoridad de certificación privada de AWS | Procese la CSR Autoridad de certificación privada de AWS para emitir un certificado de cliente válido. Configure los períodos de validez de los certificados y las plantillas de certificados y garantice el establecimiento adecuado de la cadena de certificados. Verifique la emisión del certificado y descargue el certificado firmado para su implementación en el cliente. | Administrador de AWS, arquitecto de la nube |
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Obtenga AWS credenciales temporales | Ejecute el script auxiliar de credenciales para recuperar AWS las credenciales temporales mediante el certificado de cliente y la clave privada configurados. Compruebe que el proceso de recuperación de credenciales funciona correctamente, valide el formato de las credenciales y las fechas de caducidad y garantice una integración adecuada con el IAM Roles Anywhere servicio para lograr flujos de trabajo de autenticación fluidos. | DevOps ingeniero, administrador de sistemas de AWS |
Pruebe el acceso a AWS los recursos | Realice pruebas exhaustivas del acceso a los AWS recursos utilizando las credenciales temporales obtenidas. Ejecute varios AWS CLI comandos y llamadas a la API para verificar la conectividad con los servicios de destino, como Amazon S3, Amazon EC2 y. AWS Lambda Valide que los permisos se ajusten a las políticas de funciones de IAM configuradas y documente los patrones de acceso correctos. | Ingeniero de pruebas, administrador de la nube |
Compruebe la asunción de funciones y los permisos | Realice una validación exhaustiva del proceso de asunción de funciones de IAM y de los límites de los permisos. Pruebe tanto las operaciones permitidas como las restringidas para confirmar que el acceso con privilegios mínimos se aplica correctamente. Verifique los límites de duración de las sesiones y los mecanismos de actualización de credenciales y asegúrese de que la asunción del rol cumpla con las mejores prácticas de seguridad. | Administrador de AWS, ingeniero de pruebas |
Implemente la supervisión y el registro | Configure una supervisión y un registro exhaustivos para el sistema de autenticación basado en certificados. Configure el CloudTrail registro para los registros de auditoría, implemente la supervisión de la caducidad de los certificados, configure alertas para los errores de autenticación y establezca paneles de control para rastrear los patrones de uso y los eventos de seguridad en toda la infraestructura. IAM Roles Anywhere | DevOps ingeniero, arquitecto de nube |
Resolución de problemas
| Problema | Solución |
|---|---|
Fallos en la validación de los certificados: «La validación del certificado ha fallado» o InvalidCertificate «» errores al intentar la autenticación. | Pasos de resolución: • Compruebe las fechas de validez del certificado mediante openssl x509 -en certificate.pem -dates -no out • Compruebe que la configuración de Trust Anchor apunta a la CA privada correcta • Asegúrese de que la clave privada corresponde al certificado • Regenere el certificado si lo emitió la CA incorrecta |
Errores de permiso de IAM denegado: «Acceso denegado» o «UnauthorizedOperation» al acceder a AWS los recursos a pesar de la autenticación correcta | Pasos de resolución: • Revise y amplíe las políticas de funciones de IAM para incluir los permisos necesarios • Compruebe que la política de confianza incluye a rolesanywhere.amazonaws.com como entidad de confianza • Compruebe que la configuración del ARN del perfil coincide con los recursos desplegados • Implemente un mecanismo de actualización de credenciales para procesos de ejecución prolongada |
Recursos relacionados
Información adicional
Este patrón es ideal para organizaciones con arquitecturas de nube híbrida, CI/CD canalizaciones externas AWS o cualquier sistema externo que requiera un acceso seguro. AWS El enfoque basado en certificados proporciona una mayor seguridad que las claves de acceso a largo plazo y permite la administración centralizada de los certificados mediante. Autoridad de certificación privada de AWS
Permisos de IAM configurables: la solución admite una configuración flexible de políticas de IAM mediante: --iam-policies parameter
Predeterminado:
ReadOnlyAccesspara una implementación inicial seguraPersonalizado: especifique los ARN de política separados por comas para casos de uso específicos. Por ejemplo,
S3ReadOnlyAccessEC2ReadOnlyAccess, o políticas personalizadas. Admite múltiples políticas para requisitos de permisos complejos.
Ejemplos 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"