In realtà la maggior parte delle persone pensa che l'identità sia solo un nuovo utente, una password. Li digiti, ottieni l'accesso, hai finito. Ma quando sei un'azienda che serve i clienti, l'identità diventa molto più complessa. Cosa succede quando la tua app deve consentire a migliaia di persone di registrarsi o di accedere con il proprio account Google invece di creare l'ennesima password? E come mantiene al sicuro tutti quei dati dei clienti senza mescolarli con la directory dei dipendenti? È esattamente il problema che Microsoft Entra External ID è stato creato per risolvere. Dopo è questo. Sta sostituendo completamente Azure AD B2C. Alla fine di questo episodio capirai cos'è veramente external ID. I tre modi principali per usarlo è perché è importante per qualsiasi app rivolta ai clienti. Il vecchio metodo, silo di identità separati. Immagina di essere 20 anni fa e di aver creato un'app per i clienti. All'epoca dovevi creare il tuo sistema di login, scrivere il codice per le password, impostare un database per archiviarle, creare il flusso per la password dimenticata, tutto da zero. Funzionava bene per una piccola app con poche centinaia di utenti, ma man mano che le app crescevano le cose diventavano rapidamente complicate. Le aziende dovevano consentire agli utenti di accedere con Google o Facebook, avevano bisogno dell'autenticazione a più fattori e dovevano gestire milioni di account senza interruzioni. Costruire tutto questo da soli diventava un incubo. La prima risposta di Microsoft fu agile di B2C. Era un servizio di identità per i clienti e all'epoca risolveva un problema reale. E' qui che sono iniziati i problemi. Il problema più grande era costituito da cosiddette custom policies, policy personalizzate scritte in XML. Se hai mai lavorato con file XML che coprono centinaia di righe, sai esattamente quanto sia doloroso. Difficile da configurare, difficile da correggere. Quando qualcosa si rompeva, buona fortuna a capire il perché. Oltre a ciò, Azure AD B2C era separato dalla piattaforma di identità principale di Microsoft. Quindi se avevi già Microsoft 365 o Azure AD per i tuoi dipendenti, B2C prova a imparare un prodotto completamente nuovo. Come prevedibile, i team IT faticavano a mantenerlo, gli sviluppatori temevano di lavorarci e i clienti finivano con un'esperienza di registrazione goffa che li portava ad abbandonare. Microsoft ha capito che serviva a qualcosa di più semplice e unificato ed è esattamente ciò che è diventato Microsoft Entra External AD. Cos'è veramente Microsoft Entra External AD? Quindi cos'è esattamente Microsoft Entra External AD? Ecco la definizione più semplice. È un servizio di identità cloud per utenti esterni, clienti, partner e ospiti, non per i dipendenti. Non per i dipendenti. Pensare in questo modo. Immagina che la tua azienda abbia un edificio per uffici, con il tuo tenant però forza. È il luogo in cui lavorano i tuoi dipendenti, dove si trovano le loro scrivanie e dove il loro batch consentono l'edificio. Entra ID gestisce quell'edificio. Ora immagina di aprire un negozio per i clienti, uno spazio separato, con un proprio ingresso, regole proprie e una propria sicurezza. I clienti non entrano per errore nella sala relax dei dipendenti. I dipendenti non accedono inavvertitamente agli account dei clienti. Questo è External ID. Fa parte della famiglia Microsoft Entra, ma con una natura diversa. È progettato per CHAM, la gestione dell'identità e degli accessi dei clienti e gestisce l'intero ciclo di vita di un utente esterno. Registrazione, accesso, impostazione della password, gestione del profilo, MFA e lascio di talk. Funziona con protocolli standard come OAuth 2.0, OpenID Connect e SAML, quindi quasi ogni app che crei può connettersi. Ma ecco la grande differenza rispetto al vecchio Zola di B2C. External ID è più semplice. Niente più criteri XMLizzati. Configura i flussi utenti direttamente nell'interfaccia di amministrazione. Oppure utilizzi estensioni di autenticazione personalizzate che si collegano alla tua logica di back-end esistente. Stessa potenza, meno complicazione. I tre casi d'uso principali. Quindi, come si usa effettivamente external ID? Esistono tre scenari principali. Coprono quasi ogni situazione in cui è necessario gestire qualcuno che non è un dipendente. Partiamo dal più comune, l'identità del cliente, B2C. Immagine di creare un'app per ordinare pizze. Hai bisogno che le persone si registrino, affetto in ordine e tornino la settimana successiva. Vuoi che accedano con il loro account Google invece di creare un'altra password? E devi raccogliere nome, numero di telefono e preferenze di consegna. External ID gestisce tutto questo. Ottieni flussi di registrazione e accesso predefinito. Configuri quali attributi raccogliere, nome, telefono, qualsiasi cosa ti serva. Imposti l'accesso social con Google, Facebook o Apple. E quando un utente sia autentica, external ID lascia un token alla tua app affinché sappia chi è quella persona. Questo è il sostituto di Azure ADB2C ed è da qui che la maggior parte delle organizzazioni inizia. Un altro scenario è la collaborazione business to business o B2B. Si verifica quando devi concedere a partner o fornitori l'accesso alle tue app interne. Magari un sito SharePoint che il tuo partner logistico esterno deve vedere o uno strumento di gestione progetti che i tuoi designer freelance utilizzano. In questo scenario li inviti come utenti guest nel tuo tenente aziendale. External ID gestisce l'email di invito, il processo di riscatto in cui accettano l'invito e le policy di accesso che controllano cosa possono vedere. Questo esiste da anni come collaborazione B2B all'interno di Azure AD, ma ora fa parte dell'ecosistema external ID, quindi lo gestisci dallo stesso posto dell'identità dei tuoi clienti. Poi c'è il machine to machine o M2M. Questo è meno visibile agli utenti finali ma altrettanto importante. A volte il tuo servizio back-end deve comunicare con un'altra API, un elaboratore di pagamenti, un servizio di analisi dati o un microservizio interno. Non c'è alcun intervento umano, è semplicemente un'applicazione che ne chiama un'altra. External ID utilizza il flusso client credentials di OOT 2.0. Il tuo servizio si autentica usando un client ID e un segreto e ottiene un token per chiamare l'API a valle. Questo richiede il componente aggiuntivo M2M Premium, quindi c'è un costo, ma se devi proteggere le comunicazioni API to AI è già tutto integrato. Ora questi tre scenari coprono quasi ogni situazione di identità esterna che potresti incontrare. Tuttavia c'è una decisione importante da prendere, dove risiedono effettivamente quegli utenti. Perché external ID può funzionare in due luoghi molto diversi, tenant workforce o tenant esterno. Analizziamo le due opzioni. External ID può funzionare all'interno del tuo tenant workforce esistendo oppure come tenant è separato. Non sono la stessa cosa e scegliere quella sbagliata può causare problemi in futuro. Partiamo dall'opzione tenant workforce. La tua azienda ha già un tenant e entra ID per i propri dipendenti. Questo è il tuo tenant workforce. Se abiliti una funzionalità chiamata registrazione self-service guest all'interno di quel tenant, gli utenti esterni possono registrarsi e finire nella stessa directory dei tuoi dipendenti. I loro account si trovano proprio accanto a quello del tuo CEO. Per scenari B2B più semplici, come invitare un gruppo di partner su un sito SharePoint e mescolarli nella stessa directory, va benissimo. È semplice da configurare e non devi gestire un tenant separato. Ma c'è un punto fondamentale. Se stai creando un'app per i clienti con migliaia di utenti, non vuoi che quei clienti risiedano nella stessa directory dei tuoi dipendenti. È un rischio per la sicurezza. Un dipendente potrebbe inadvertitamente accedere ai dati dei clienti. Una modifica alla configurazione pensata per i dipendenti potrebbe influire sull'accesso dei clienti. Il branding per le pagine di accesso dei clienti sarebbe vincolato a quello impostato per la tua azienda. Non è l'ideale. Alternativa è l'opzione tenant esterno. Crea una directory nuova e isolata, pensata specificamente per l'identità dei clienti. Nessun dipendente te li segue. È uno spazio completamente separato. Ricordi l'edificio per uffici vista prima? Il tenant workforce è la tua sede centrale aziendale. Il tenant esterno è il punto vendita dedicato che apri per i tuoi clienti. Hanno il loro ingresso, le loro regole e la loro sicurezza. Niente viene confuso. Quindi quali sono i vantaggi di un tenant esterno? Innanzitutto ottieni un archivio utente isolato. I dati dei clienti restano completamente separati da quelli dei dipendenti, che riduce i rischi e semplifica la conformità. In secondo luogo ottieni un branding separato. Puoi personalizzare l'aspetto delle pagine di accesso specificamente per i tuoi clienti senza influire sul tenant aziendale. Terzo ottieni l'app di autenticazione nativa per le app mobile che ti permette di creare schermate di login su misura all'interno della tua app iOS o Android. Niente reindirizzamenti al browser, niente scomodo webview. E quarto ottieni un sistema di prezzi basato su mautenti attivi mensi. Paghi solo per gli utenti che effettuano effettivamente l'autenticazione in un dato mesi che cresce naturalmente con il tuo bacino di clienti. Quindi quando scegli l'uno o l'altro? È piuttosto semplice. Se stai costruendo un'app B2C con migliaia di clienti, scegli un tenant esterno. È l'approccio consigliato ed è ciò per cui Xternity è stato progettato. Se stai solo invitando partner ad accedere a risorse interne, l'opzione del tenant workforce va bene. La chiave è capire la differenza prima di iniziare a costruire perché migrare dall'uno all'altro in seguito non è banale. Sicurezza MFA accesso condizionale. Ora parliamo di sicurezza. Se vuoi far accedere i clienti alla tua app, devi assicurarti che le persone sbagliate non entrino. Xternity include le stesse funzionalità di sicurezza di livello enterprise che Entryd offre per i dipendenti. Ciò significa autenticazione a più fattori. Accesso condizionale e policy basate sul rischio. Per l'MFA al momento è due opzioni. Pasco de Monuso via mail è gratuito. Il sistema invia un codice all'email dell'utente, lui lo inserisce e il gioco è fatto. Il Pasco de Monuso via SMS funziona allo stesso modo ma arriva sul telefono e comporta costi dell'operatore. Una cosa da notare, non c'è ancora il supporto per Microsoft Authenticator. È un limite attuale su cui Microsoft sta probabilmente lavorando ma per ora ci sono solo email o SMS. L'accesso condizionale è dove le cose si fanno interessate. Puoi definire regole che richiedono, ad esempio, l'MFA per accessi a rischio medio o superiore o bloccare l'accesso da paesi in cui non operiamo. Il sistema valuta ogni tentativo di accesso in tempo reale. Se qualcuno prova ad accedere da una posizione a un dispositivo sospetto, può aumentare automaticamente i requisiti di sicurezza senza che tu debba costruire tale logica. Tuttavia c'è una funzione che spicca davvero, l'autenticazione step up. Ecco come funziona. Immagina che un utente acceda alla tua app solo con password per sfogliare il catalogo prodotti. Va bene per attività a basso rischio ma quando prova a visualizzare lo storico dei pagamenti o a scaricare una fattura, serve una verifica aggiuntiva. Grazie all'autenticazione step up puoi richiedere l'MFA solo per sezioni specifiche della tua app. L'utente non riceve richieste finché non prova ad accedere a dati sensibili. Il tutto è gestito da external ID dietro le quinte usando il cosiddetto contesto di autenticazione. Tu definisci quali parti dell'app necessitano di maggiore sicurezza e il sistema fa il resto. L'utente ha un'esperienza fluida durante la navigazione base ma i dati sensibili restano protetti. Controllo del branding è uno dei motivi principali per cui le aziende scelgono external ID invece di creare un sistema di login personalizzato. Hai il controllo totale sull'aspetto delle pagine di registrazione e accesso, puoi caricare il logo, impostare i colori di sfondo, aggiungere una favicon e personalizzare l'intestazione e piedi pagina con link a privacy policy e termini di servizio. Se desideri ancora più controllo puoi caricare un file CSS personalizzato per sovrascrivere font, colori di pulsanti e layout. È il tuo brand, i tuoi colori, decidi tutto tu. Ora qui la situazione si complica un po'. Il branding è globale per tenant, non per singola applicazione. Quindi se hai più app come un portale clienti e un'app mobile condivideranno tutte le stesse pagine brandizzate. Non puoi dare a ogni app un aspetto diverso. Il vecchio Azure AD B2C permetteva un branding per singola applicazione ma external ID non lo supporta ancora. Un'altra limitazione, i messaggi di errore nelle pagine di login non sono personalizzabili. Se qualcuno inserisce un'email inesistente vedrà un messaggio del tipo non abbiamo trovato un account con questo indirizzo email e non puoi modificare quel test. Per alcune organizzazioni va bene ma per altre, specialmente in settori regolamentati o con una voce del brand molto precisa, è un vero problema. Le app mobile hanno un'opzione migliore. External ID dispone di un'app di autenticazione nativa per iOS e Android. Invece di reindirizzare gli utenti a una pagina di login basata su browser puoi creare schermate di accesso completamente personalizzate all'interno dell'app. Nessuno reindirizzamento al browser, nessuno va più poco pronto. L'utente rimane sempre nella tua app e tu controlli ogni singolo pixel. È un'esperienza molto più fluida ed è una di quelle funzionalità che Azure AD B2C non ha mai avuto. Migrazione da Azure AD B2C Se usi già Azure AD B2C probabilmente ti chiederai cosa significhi tutto questo per te. Ma come stanno le cose? Microsoft continuerà a supportare B2C almeno fino al 2003. Quindi i tuoi talent attuali non smetteranno di funzionare domani ma non arriveranno nuove funzionalità. Tutta l'innovazione, le paschi, la autenticazione nativa e la protezione dalle frodi sono esclusive di External ID. Ti trovi su una piattaforma che è essenzialmente feo. Microsoft ha pubblicato strumenti e linee guida ufficiali per la migrazione prevedendo due percorsi in base alle dimensioni. Per i tenant con meno di 5 milioni di oggetti directory, utenti, gruppi e attributi personalizzati la migrazione standard è piuttosto semplice. Funziona come un trasferimento da tenant a tenant. Si crea un nuovo tenant external ID, si migrano utenti e credenziali, poi si trasferiscono le applicazioni. Microsoft fornisce strumenti per l'esportazione e l'importazione massiva e si può usare la migrazione delle password just-in-time per ridurre al minimo le interruzioni. Per i tenant più grandi, con oltre 5 milioni di oggetti, esiste una modalità di compatibilità ad alta scala o HSC. In questa modalità, Azure ID, B2C ed External ID operano fianco a fianco nello stesso tenant. Gli endpoint B2C esistenti rimangono attivi mentre sposti gradualmente le applicazioni. È pensata per le organizzazioni che non possono migrare milioni di utenti da un giorno all'altro, ma comporta dei compromessi. Niente provider di identità social, niente paschi, accesso condizionale limitato e alcune funzioni semplicemente non sono disponibili. Considerala una strategia a ponte, non una soluzione permanente. Ora un cambiamento importante. Criteri personali più. Se hai creato flussi di autenticazione complessi usando l'identity experience framework basato su XML di Azure e B2C, non funzioneranno in External ID. Non funzioneranno in External ID. Dovrai ricostruire quella logica usando i flussi utenti e le estensioni di autenticazione personalizzate. Non esiste uno strumento magico che converta il tuo XML in nuovo formato. Dovrai occupartene personalmente. Quindi ecco a cosa si riusci tu. Se parti da zero oggi, usa External ID. Non c'è motivo di prendere in considerazione B2C. Se hai un tenant B2C esistente, inizia a pianificare la migrazione ora. Hai tempo fino al 2030, ma aspettare l'ultimo minuto significa affrontare di corsa una migrazione complessa cercando di mantenere attive le app esistenti. Inizia in picco. Scegli un'applicazione, migra alla, testala, impara dal processo e poi passa al resto. Esperienza di sviluppo e automazione. Microsoft si è concentrata molto su Rendere External ID semplice per gli sviluppatori ed è un enorme cambiamento rispetto ai vecchi criteri personalizzati di B2C. Ricordi quei file XML che si estendevano per centinaia di righe e si rompevano se mancavano solo parentesi? Non esistono. Esiste un'estensione di Visual Studio Code chiamata Microsoft Entra External ID. Dopo l'autenticazione puoi esplorare il tenant, visualizzare i flussi utente, scaricarli come file JSON e persino visualizzare l'anteprima del branding senza lasciare l'editor. Vedi come appare la tua pagina di accesso prima ancora di pubblicarla. Poi c'è la Microsoft Graph API. Quasi ogni risorsa di External ID come flussi utente, registrazioni app e branding può essere gestita a livello programmatico. Ciò significa che puoi automatizzare la configurazione del tenant nelle pipeline chesti di Usando PowerShell o chiamate REST. Crea un nuovo tenant, configura i flussi utente, registra la tua app e imposta il branding, tutto tramite script. Se gestisci più ambienti, questo ti fa risparmiare un sacco di tempo. Le estensioni di autenticazione personalizzate sono dove risiede il vero potenziale. Invece di complessi XML, estendi i flussi di autenticazione con semplici chiamate HTTP a funzioni di Azure. Ci sono quattro eventi a cui puoi agganciarti. L'inizio dell'emissione del token ti permette di aggiungere claim personalizzati come ruoli o livelli di fedeltà. L'inizio e l'invio della raccolta attributi ti consentono di convalidare o precompilare i dati di registrazione chiamando il tuo back-end. E l'invio dell'ATP via email ti permette di personalizzare l'email di verifico. È la stessa flessibilità di B2C, ma in un modello con cui ogni sviluppatore può lavorare. Ci sono dei limiti da conoscere. Non ci sono ancora notifiche di Microsoft Graph, quindi non puoi attivare automaticamente un flusso quando un nuovo utente si iscrive. Alcune configurazioni vanno fatte ancora manualmente nel centro e non esiste una pagina di modifica profilo integrata. La pagina nella tua app è chiamare tu stesso la Graph API. Ma la direzione è chiara. Microsoft vuole che l'ID esterno sia completamente automatizzabile. Questo rende più facile la gestione su larga scala. Ora sai che Microsoft Entra External ID è il sostituto moderno di Azure AD B2C unificato sotto il marchio Entra. I tre casi d'uso, identità dei clienti, collaborazione tra partner e machine to machine, coprono quasi ogni esigenza di identità esterna. E la decisione chiave è se usare il tuo tenant aziendale o crearne un sterno separato. Per gli app rivolti ai clienti, un tenant separato è quasi sempre la scelta mia. L'identità è la porta d'ingresso della tua applicazione. Renderla corretta, sicura, personalizzata e semplice influisce direttamente sulla fiducia degli utenti e sulla crescita del business. Il tuo compito. Vai su entra.microsoft.com crea un tenant esterno e prova la guida introduttiva. Ti guiderà attraverso la configurazione di un'app di esempio in pochi minuti. Iscriviti per altre spiegazioni semplici sulla piattaforma di identità di Microsoft.