L'identità non è l'e-mail, e il login non può essere un muro — senza negoziare.
Un unico broker su auth.{dominio} che sa chi è la persona e lo dimostra alle app: PKCE per ogni client, JWT asimmetrici, almeno 2 fattori, ReBAC deny-by-default e recupero forte almeno quanto il login.
$ schematize install iamSoglie non negoziabili
Non si spengono "per andare più veloci". Elenco completo nella skill.
Auth è un'applicazione separata
Servizio, front, repo e utente propri su auth.{dominio}; ogni login e registrazione avviene lì e le app delegano con code + PKCE.
Chiave di firma solo in auth
Senza di essa in prd il servizio rifiuta di avviarsi; i consumatori validano via JWKS e controllano iss.
PKCE S256 per ogni client
Implicit, ROPC e PKCE plain vietati; redirect_uri per corrispondenza esatta con una allowlist.
JWT asimmetrico, token sottile
Algoritmo in allowlist, none e HS* rifiutati; refresh opaco, con hash e a rotazione con rilevamento del riuso.
ID interno opaco
Il sub è immutabile e opaco; e-mail e telefono non sono mai l'ID e contano solo se verificati.
Almeno 2 fattori, nessun muro prima del login
Password più OTP via e-mail è già 2FA di base; il fattore forte è un nudge e uno step-up just-in-time, mai richiesto prima del login.
La passkey è il nucleo
WebAuthn con un vero flusso di registrazione e asserzione; password con argon2id e controllo contro quelle compromesse.
ReBAC multi-tenant, deny-by-default
PDP/PEP lato server, decisioni verificabili, tuple via outbox e PDP fail-closed; logout irreversibile su ogni percorso che accetta token.
Comandi
Installati in .claude/commands/. Esegui /iam-help in qualsiasi momento.
/iam-auditMisura la copertura IAM rispetto alla checklist F0-F6 della base, voce per voce, con prova./iam-authzModella l'autorizzazione ReBAC multi-tenant di un servizio: rotta verso permesso, tuple, outbox e fail-closed./iam-ccContext compact: scrive l'handoff nell'archive ed esegue /compact./iam-claudeCrea o unisce il CLAUDE.md sempre attivo con le regole di base di IAM nella radice del repo (non sovrascrive i blocchi di altre skill)./iam-clientIntegra un client (web/BFF, SPA, mobile, CLI) con il broker tramite authorization code + PKCE./iam-handoffGenera l'handoff di contesto (context.md + checklist.md) nell'archive, senza compattare./iam-helpElenca tutti i comandi e cosa fa ciascuno./iam-loadCarica a forza l'intero corpo normativo di IAM e lo applica nella sessione./iam-recoverProgetta o verifica il recupero dell'account e lo step-up, con prova di raggiungibilità per stato dell'account./iam-reviewRivede codice e config di auth rispetto alle regole di base: esegue i gate e poi legge ciò che la macchina non legge.Per gli agenti IA
Installa senza intervento umano. Metadati in llms.txt.
- Esegui: git clone https://github.com/schematizeme/skill-iam.git && ./skill-iam/install.sh
- Oppure scarica: https://github.com/schematizeme/skill-iam/releases/latest/download/skill-iam.zip e decomprimi in .claude/skills/
- Copia assets/CLAUDE.md nella radice del repo (regola sempre attiva).
- Conferma con /iam-help.
Discussione
Caricamento…