La identidad no es el correo y el login no puede ser un muro: sin negociar.
Un único broker en auth.{dominio} que sabe quién es la persona y se lo demuestra a las apps: PKCE en todo cliente, JWT asimétrico, al menos 2 factores, ReBAC deny-by-default y recuperación igual o más fuerte que el login.
$ schematize install iamPisos innegociables
No se apagan "para ir más rápido". Lista completa en la skill.
Auth es una aplicación separada
Servicio, front, repo y usuario propios en auth.{dominio}; todo login y registro ocurre allí y las apps delegan con code + PKCE.
La clave de firma vive solo en auth
Sin ella en prd el servicio se niega a arrancar; los consumidores validan por JWKS y comprueban el iss.
PKCE S256 en todo cliente
Implicit, ROPC y PKCE plain vetados; redirect_uri por coincidencia exacta con una allowlist.
JWT asimétrico y token fino
Algoritmo en allowlist, none y HS* rechazados; el refresh es opaco, con hash y rotativo con detección de reuso.
ID interno opaco
El sub es inmutable y opaco; el correo y el teléfono nunca son el ID y solo valen verificados.
Mínimo 2 factores, sin muro previo al login
Contraseña más Email OTP ya es 2FA de base; el factor fuerte es un nudge y un step-up just-in-time, nunca exigido antes del login.
La passkey es núcleo
WebAuthn con flujo real de registro y aserción; contraseñas con argon2id y verificación contra filtradas.
ReBAC multi-tenant, deny-by-default
PDP/PEP en el servidor, decisión auditada, tuplas por outbox y PDP fail-closed; logout irreversible en todo camino que acepte token.
Comandos
Instalados en .claude/commands/. Usa /iam-help en cualquier momento.
/iam-auditMide la cobertura de IAM contra el checklist F0-F6 de la base, punto por punto, con prueba./iam-authzModela la autorización ReBAC multi-tenant de un servicio: ruta a permiso, tuplas, outbox y fail-closed./iam-ccContext compact: guarda el handoff en el archive y ejecuta /compact./iam-claudeCrea o fusiona el CLAUDE.md siempre activo del piso de IAM en la raíz del repo (no sobrescribe bloques de otras skills)./iam-clientIntegra un cliente (web/BFF, SPA, móvil, CLI) con el broker mediante authorization code + PKCE./iam-handoffGenera el handoff de contexto (context.md + checklist.md) en el archive, sin compactar./iam-helpLista todos los comandos y lo que hace cada uno./iam-loadCarga a la fuerza todo el cuerpo normativo de IAM y empieza a aplicarlo en la sesión./iam-recoverDiseña o audita la recuperación de cuenta y el step-up, con prueba de alcanzabilidad por estado de cuenta./iam-reviewRevisa código y configuración de auth contra el piso: ejecuta los gates y lee lo que la máquina no lee.Para agentes de IA
Instala sin intervención humana. Metadatos en llms.txt.
- Ejecuta: git clone https://github.com/schematizeme/skill-iam.git && ./skill-iam/install.sh
- O descarga: https://github.com/schematizeme/skill-iam/releases/latest/download/skill-iam.zip y descomprime en .claude/skills/
- Copia assets/CLAUDE.md a la raíz del repo (regla siempre activa).
- Confirma con /iam-help.
Discusión
Cargando…