Identity Lifecycle Automation: Onboarding e Offboarding
Ciclo di vita governato dall’HR, con percorsi GROUND e CREW, rientri, rimozione differita e audit
Context
Problema e contesto
La gestione manuale delle utenze espone a ritardi, configurazioni difformi e accessi residui. Il processo precedente richiedeva interventi separati su directory, posta, gruppi e comunicazioni, senza una coda operativa unica. Il sistema porta assunzioni, cessazioni, contratti a termine e rientri in un flusso tracciabile. Gli eventi provengono dal database HR: nel percorso ordinario l’IT non deve creare o disattivare account manualmente.
Solution
Soluzione implementata
Una piattaforma self-hosted combina n8n, PostgreSQL, PowerShell via Kerberos e Microsoft Graph. Ogni evento ha stato, timestamp e ultimo errore; retry e idempotenza consentono di riprendere il lavoro senza duplicazioni. GROUND segue il percorso ibrido Active Directory + Exchange; CREW nasce cloud-only in Entra ID. La dashboard IT affianca il processo identità e gestisce preparazione, consegna, firma e restituzione dei dispositivi con stati funzionali dichiarati.
HR come fonte di verità e code idempotenti
Una procedura sul database HR restituisce assunzioni, cessazioni e fine contratto. n8n normalizza i dati, determina il ramo GROUND/CREW e scrive code PostgreSQL con stati espliciti: pending, done, skipped o error. Gli eventi di assunzione vengono importati con un anticipo configurabile rispetto alla data di inizio, per consentire le attività di preparazione prima del primo giorno di lavoro. Alla cessazione parte la fase di disabilitazione. Eventi duplicati aggiornano la stessa chiave logica invece di creare operazioni parallele.
Provisioning differenziato: GROUND e CREW
GROUND — PowerShell Remoting autenticato con Kerberos crea l’utente AD e la Remote Mailbox nella OU corretta, imposta attributi organizzativi e scadenza per i contratti a termine. Un passaggio idempotente assegna i gruppi predefiniti.
CREW — Microsoft Graph crea l’utente direttamente in Entra ID dopo la validazione del ruolo. Il gruppo del personale navigante viene assegnato e verificato con retry; gli altri gruppi possono essere dinamici.
Dopo il successo, l’indirizzo aziendale viene sincronizzato sul record HR e le credenziali temporanee sono consegnate con link monouso, senza persistenza nella dashboard.
Rientri e offboarding in due fasi
Un rientro entro la finestra operativa configurata, nello stesso ramo, riattiva l’identità esistente. Per GROUND vengono ripristinati OU e gruppi dallo snapshot; per CREW vengono riabilitati account e attributi cloud.
Fase 1 — alla cessazione, l’account viene disabilitato immediatamente e le appartenenze ai gruppi GROUND vengono rimosse dopo averne salvato uno snapshot. Gli account CREW vengono disabilitati in Entra ID.
Fase 2 — trascorso un periodo di osservazione dalla data di cessazione, e solo dopo una verifica dello stato live, gli account GROUND vengono spostati nella OU dedicata alle identità dismesse, mentre gli account CREW vengono eliminati da Entra ID.
La finestra minima di recupero copre il periodo tra disabilitazione e rimozione definitiva, più il ripristino nativo Microsoft per le mailbox. L’oggetto AD GROUND non viene cancellato automaticamente.
Dashboard IT e dispositivi: stato reale
La dashboard Flask è protetta da SSO Entra ID e registra l’operatore su ogni scrittura. Disponibili: coda onboarding, checklist, preparazione PC, reset password GROUND, TAP, consegna/ritiro, firma, PDF, archivio SharePoint, dispositivi ritirati e spare. In sviluppo: condizioni dinamiche, classificazione nuovi dispositivi, notifiche di mancata restituzione e guida in-app. Pianificate: riassegnazione rapida, report dei ritirati e pulizia tecnica assistita con conferma umana. La dashboard integra il lifecycle ma non è la fonte degli eventi identità.
Guardrail e osservabilità
Il sistema verifica lo stato reale prima delle azioni distruttive, esclude dalle rimozioni ogni identità riattivata e isola gli errori per singolo record. TEST_MODE e dry-run usano tabelle gemelle, destinatari di verifica e simulazioni. Le evidenze comprendono timestamp di fase, snapshot dei gruppi, esito della sincronizzazione HR, report giornalieri e storico n8n. Una riconciliazione periodica in sola lettura confronta HR, AD ed Entra ID per evidenziare anomalie senza forzare azioni.
Governance e audit
Il progetto è stato realizzato nel contesto di un dipartimento IT certificato ISO 27001, ed è rientrato tra le evidenze operative valutate nell'audit di certificazione. Il valore del controllo deriva da fonte HR, separazione dei privilegi, stati espliciti, rimozione differita e prove di esecuzione. La dashboard e i workflow supportano audit e gestione degli asset senza esporre dettagli interni sul sito pubblico.
Outcomes