Tema
TMPL-008: Plantilla de revisión trimestral de cuentas de aplicación y sistema
| Campo | Valor |
|---|---|
| ID | TMPL-008 |
| Versión | 1.0 |
| Fecha de emisión | 2026-06-16 |
| Propietario | CISO + CTO (joint review) |
| PCI DSS | Req 7.2.5 + 7.2.5.1 — "All access by application and system accounts and related access privileges are appropriately managed" + "are reviewed at a frequency defined in the entity's targeted risk analysis" |
| Frecuencia | Trimestral (definida por TRA-001) |
| Diferencia con TMPL-007 | TMPL-007 = cuentas humanas (Req 7.2.4); TMPL-008 = cuentas de aplicación/sistema (Req 7.2.5) |
1. Propósito
Esta plantilla normaliza la revisión trimestral de cuentas de aplicación y sistema (service accounts) requerida por PCI DSS v4.0 Req 7.2.5.1. La frecuencia trimestral está justificada por TRA-001.
A diferencia de TMPL-007 (cuentas humanas, semestral), esta plantilla cubre únicamente cuentas no-interactivas usadas por aplicaciones, servicios, jobs de CI/CD, tokens de API, y vendor service accounts.
2. Cuándo se ejecuta
| Ciclo | Ventana | Deadline absoluto |
|---|---|---|
| Q1 | 1 – 31 marzo | 31 marzo 23:59 UTC |
| Q2 | 1 – 30 junio | 30 junio 23:59 UTC |
| Q3 | 1 – 30 septiembre | 30 septiembre 23:59 UTC |
| Q4 | 1 – 31 diciembre | 31 diciembre 23:59 UTC |
Calendar reminder automático el día 1 de cada mes de cierre de trimestre.
3. Quién participa
| Rol | Responsabilidad |
|---|---|
| CTO | Proponente: extrae los listados, propone decisión por SA |
| CISO | Revisor: valida decisión + verifica justificación |
| DevOps/SRE | Confirma que el SA sigue siendo usado por un sistema activo |
| Auditor externo (años pares) | Q4 de años pares — auditor independiente |
4. Categorías y plataformas en alcance
Per TRA-001 §1.1, las 7 categorías de service accounts:
| Cat | Descripción | Plataforma de extracción |
|---|---|---|
| A | DB primary admin | doctl databases user list --format Name,Role (filtrar role=primary) |
| B | K8s cluster-admin SA | kubectl get sa -A + kubectl get clusterrolebinding |
| C | App production SA | kubectl get sa -n app,cde,kafka + psql \du |
| D | Read-only SA | psql \du (filtrar role=readonly) |
| E | Infra automation token | doctl auth list, gh app list, Terraform service principal |
| F | Vendor SA | doctl databases user list (filtrar vendor), Wazuh internal_users.yml (filtrar service) |
| G | Compensating-control SA | Wazuh API users, Kong admin key, GoPhish API key, Coraza WAF tokens |
5. Formulario
5.1 Header del informe
Cycle: Q1 2026 / Q2 2026 / Q3 2026 / Q4 2026 / ...
Review period: YYYY-MM-DD a YYYY-MM-DD (trimestre completo)
TRA reference: TRA-001 v1.0 (vínculo + última revisión)
Proposing CTO: Nombre + email
Reviewing CISO: Nombre + email
DevOps confirm: Fecha + nombre
Auditor (si aplica): Solo en Q4 años pares5.2 Por cada SA, completar:
| Service Account | Cat | Plataforma | Privilegio | Usado en últimos 90 días | Decisión | Justificación |
|---|---|---|---|---|---|---|
| (string) | A-G | (string) | (string) | YES / NO / UNKNOWN | KEEP / DOWNGRADE / ROTATE / DISABLE / REMOVE / EXEMPT | (min 20 chars) |
Códigos de decisión (extiende TMPL-007 con ROTATE):
| Código | Significado | Acción técnica |
|---|---|---|
KEEP | Sigue apropiado | Ninguna |
DOWNGRADE | Reducir privilegios | UPDATE role |
ROTATE | Mantener cuenta pero rotar credencial | Genera nueva credencial + update Secret/Vault |
DISABLE | Suspender (retención) | is_enabled = false |
REMOVE | Eliminar | DROP / DELETE / doctl databases user delete |
EXEMPT | Mantener con justificación + fecha re-eval | Documentar fecha |
ROTATE es específico de service accounts y no aplicaba en TMPL-007.
5.3 Sumario de acciones tomadas
Total service accounts revisados: ___
KEEP: ___
DOWNGRADE: ___
ROTATE: ___
DISABLE: ___
REMOVE: ___
EXEMPT: ___
Tickets generados: ___
Ejecución de acciones: Completada el YYYY-MM-DD5.4 Acuse de recibo del CTO
Yo, [CTO nombre completo], CTO de Fintrixs SAS, confirmo que:
1. He revisado personalmente cada uno de los ___ service accounts listados.
2. He validado que el acceso de cada SA sigue siendo apropiado a la
FUNCIÓN del sistema o aplicación que lo consume (PCI Req 7.2.5.b).
3. Cada SA tiene un sistema o aplicación viva consumiéndolo (ningún
"orphan SA").
4. He aplicado las decisiones de ROTATE/DOWNGRADE/DISABLE/REMOVE.
5. Las excepciones (EXEMPT) tienen TTL documentado y owner asignado.
Firma: ________________________________
Fecha: ________________________________5.5 Acuse de revisión del CISO
Yo, [CISO nombre completo], CISO de Fintrixs SAS, confirmo que:
1. He revisado el informe del CTO.
2. He validado que el TRA-001 sigue siendo válido como justificación de
la frecuencia trimestral (sin cambios significativos que disparen
re-evaluación).
3. He verificado en una muestra del 20% (random) que cada SA tiene
sistema consumidor identificado.
Firma: ________________________________
Fecha: ________________________________6. Archivo + retención
- Path:
docs/pci-dss/service-account-reviews/YYYY-QX-review.md - Retención: 7 años (PCI 10.5.1)
- Acceso: read-only en el repo Git (immutable por convención)
- Backup: copia automática a DO Spaces
fintrix-compliance-archive/cada 24h
7. Verificación TRA anual
Per PCI 12.3.1.5, el TRA-001 debe revisarse anualmente. En el ciclo Q2 de cada año, el CISO confirma en §5.5 que la frecuencia trimestral sigue siendo apropiada. Si no, dispara la actualización del TRA-001.
8. Vínculo con otros controles
- TRA-001 — Frecuencia — el TRA que justifica el "trimestral"
- TMPL-007 — Cuentas humanas — equivalente para humanos
- Q45 — User Account Listings — snapshot Q45 incluye SAs
- Q48 — Inactive Account Audit — audit mensual auto-flag SAs inactivos
- POL-003 — Logical Access — política madre
- PCI DSS v4.0 Req 7.2.5 + 7.2.5.1 + 12.3.1
