# Política de Rotación **Estado:** Activo --- ## Matriz por Tipo de Credencial | Tipo | Rotación | Ejemplos | Responsable | |------|----------|----------|-------------| | `API_KEY` | 90 días | OpenRouter, Groq, Cloudflare | Automatizado + Revisión | | `DB_CREDENTIAL` | 30 días | PostgreSQL, Redis | Automatizado | | `SERVICE_TOKEN` | 7 días | n8n, Nextcloud, Slack webhooks | Automatizado | | `CERTIFICATE` | 90 días | SSL/TLS (Let's Encrypt) | Traefik auto-renovación | | `SIGNING_KEY` | 180 días | JWT, KEK-SIGNING | Manual + Notificación | | `ENCRYPTION_KEY` | 365 días | AES-256, KEK-DATA | Manual + Auditoría | | `SSH_CREDENTIAL` | 180 días | Llaves SSH servidores | Manual + Backup | --- ## Procedimiento de Rotación ``` 1. SENTINEL genera alerta 7 días antes de expiración 2. Generar nueva credencial en el servicio 3. Actualizar en Infisical (versión anterior se mantiene 24h para rollback) 4. Verificar funcionamiento de servicios dependientes 5. Revocar credencial anterior en el servicio origen ``` --- ## Alertas de Rotación | Tiempo restante | Severidad | Acción | |-----------------|-----------|--------| | 7 días | MEDIUM | Email a admin | | 24 horas | HIGH | Email + Slack | | Expirada | CRITICAL | Email + Slack + PagerDuty | --- ## Calendario de Rotación | Frecuencia | Credenciales | |------------|--------------| | **Semanal** | SERVICE_TOKEN (webhooks, tokens temporales) | | **Mensual** | DB_CREDENTIAL (PostgreSQL, Redis) | | **Trimestral** | API_KEY, CERTIFICATE | | **Semestral** | SIGNING_KEY, SSH_CREDENTIAL | | **Anual** | ENCRYPTION_KEY, MASTER_KEY | --- ## Automatización | Tarea | Herramienta | |-------|-------------| | Alertas expiración | SENTINEL | | Renovación certificados | Traefik + Let's Encrypt | | Rotación DB credentials | Script + Infisical API | | Notificaciones | ntfy + Slack |