c8.3 Eliminar credenciales de larga vida con acceso temporal
Sustituir credenciales estáticas de larga vida por credenciales temporales y gestionar de forma segura las cuentas y factores de autenticación usados por aplicaciones y sistemas.
Requisito 8
Identify Users and Authenticate Access to System Components
Sub-requisitos PCI cubiertosCobertura mostrada por sub-control de PCI DSS v4.0.1. “Cubierto” = atendido por esta recomendación de AWS. “En roadmap” = técnico, planeado. “Tu responsabilidad” = control organizacional/de proceso. “Fuera de alcance” = control físico o de terceros no implementado en AWS.
8.3 Autenticación robusta de usuarios y administradores
- 8.3.1 All access authenticated via at least one strong auth factor Cubierto
- 8.3.2 Strong cryptography protects auth factors in transit and storage Cubierto
- 8.3.3 User identity verified before modifying an auth factor Tu responsabilidad
- 8.3.4 Invalid auth attempts limited (lockout) — Cognito/IdP; IAM users need MFA En roadmap
- 8.3.5 Passwords/passphrases set and reset securely Cubierto
- 8.3.6 Minimum password length and complexity Cubierto
- 8.3.7 No reuse of the last four passwords/passphrases Cubierto
- 8.3.8 Authentication policies documented and communicated to users Tu responsabilidad
- 8.3.9 If single-factor password: change every 90 days or dynamic analysis Cubierto
- 8.3.10 SP customer password guidance (service providers only) Tu responsabilidad
- 8.3.11 Physical/logical tokens, smart cards, certificates assigned individually Fuera de alcance
8.6 Gestión de cuentas y factores de autenticación de aplicaciones y sistemas
- 8.6.1 Interactive login by system/app accounts managed and justified Cubierto
- 8.6.2 Passwords for app/system accounts not hard-coded in scripts/config Cubierto
- 8.6.3 Passwords for app/system accounts protected and changed periodically Cubierto
Cómo implementarlo en AWS
Usar roles IAM con credenciales temporales (STS) para cargas y CI/CD (IAM Roles Anywhere, OIDC federation). Rotar y almacenar secretos de aplicaciones/sistemas en AWS Secrets Manager con rotación automática. Eliminar access keys estáticas. Aplicar políticas de contraseña conformes cuando existan credenciales locales.
Implementación práctica
Cómo se implementa este control en cada arquitectura de referencia:
Reemplaza las llaves estáticas con credenciales temporales y rota automáticamente cualquier secreto de aplicación/sistema que quede.
- Usa roles IAM con credenciales STS temporales para las cargas y el CI/CD (roles de instancia, IAM Roles Anywhere, federación OIDC) en lugar de access keys estáticas.
- Guarda los secretos de aplicación/sistema en Secrets Manager con rotación automática; elimina las credenciales embebidas del código y la configuración.
- Elimina las access keys estáticas existentes y confírmalo con el Credential Report de IAM.
Cómo validar: El Credential Report no muestra access keys estáticas activas para las cargas, y Secrets Manager muestra la rotación habilitada en los secretos de aplicación.
Evita: Dejar una access key estática «para la app». Usa un rol con credenciales temporales; las llaves estáticas se filtran y rara vez rotan.
Prefiere credenciales temporales basadas en roles en todas partes y prohíbe las llaves estáticas por política en toda la organización.
- Estandariza en credenciales temporales basadas en roles (Roles Anywhere / federación OIDC) para todas las cargas y pipelines.
- Prohíbe crear usuarios IAM / access keys estáticas con una SCP en la OU de PCI.
- Gestiona y rota los secretos por cuenta en Secrets Manager (sin almacenes de secretos compartidos entre cuentas).
Cómo validar: Una prueba de SCP bloquea crear una access key en una cuenta del CDE, y los secretos de cada cuenta muestran la rotación habilitada.
Evita: Permitir llaves estáticas «solo en una cuenta». Una excepción se propaga; bloquea la creación de llaves en toda la organización y usa roles.
Validación PCI
Procedimientos de prueba
- Examinar la documentación y observar una autenticación para verificar que el acceso de usuario se autentica mediante al menos un factor de autenticación (8.3.1.a, 8.3.1.b).
- Examinar la documentación del proveedor y las configuraciones para verificar que los factores de autenticación se vuelven ilegibles con criptografía fuerte en tránsito y en almacenamiento (8.3.2.a).
- Examinar scripts, archivos de configuración/propiedades y código fuente para verificar que las contraseñas/frases de las cuentas de aplicación/sistema no están embebidas en el código (8.6.2.b).
Evidencia en AWS
- Uso de roles/STS y ausencia de access keys estáticas (Credential Report).
- Rotación automática de secretos configurada en Secrets Manager.
- Política de contraseñas conforme donde apliquen credenciales locales.
Enfoque personalizado
Requiere un análisis de riesgo dirigido (Req 12.3.2).
Objetivo del enfoque personalizado
- 8.3 — Una cuenta no puede accederse salvo con una combinación de identidad de usuario y un factor de autenticación.
- 8.6 — Cuando se usan de forma interactiva, todas las acciones con cuentas designadas como de sistema o aplicación están autorizadas y son atribuibles a una persona individual.
Servicios AWS
Recursos de aprendizaje
Referencias
- AWS Security Maturity Model: Temporary credentials, Secrets management
- PCI DSS v4.0.1 Requirements 8.3, 8.6
PCI DSS Security Maturity Model