Come funziona Azure AD Pass-through Authentication

Una delle richieste che più spesso fanno gli utenti è quella di usare le stesse credenziali (nome utente e password) per accedere alle risorse aziendali e ai servizi basati sul Cloud. Questo tipo di autenticazione viene chiamata SAME SIGN-ON.

Utilizzando il tool Azure AD Connect molte aziende usano la sincronizzazione delle password di Azure AD allo scopo di fornire agli utenti un solo set di credenziali di accesso ai servizi locali (Active Directory) e al Cloud.

Da non confondere con l’autenticazione SAME SIGN-ON è invece l’autenticazione SINGLE SIGN-ON, che necessita di Active Directory Federation Services (ADFS). Per approfondimenti vi rimando all’articolo Che cos’è Single Sign-On (SSO).

Autenticazione Pass-through di Azure AD

Una novità, che in realtà è ancora in Preview, è rappresentata dall’autenticazione Pass-through. L’autenticazione Pass-through di Azure AD garantisce che la convalida della password per i servizi di Azure AD venga eseguita in Active Directory (quindi sul Domain controller in locale) e non è quindi necessario memorizzare le password nel Cloud nel Tenant di Azure AD.

Molte aziende infatti, per motivi di sicurezza, non vogliono che le password, anche sotto forma di hash, vengano divulgate al di fuori dell’ambiente aziendale.

L’autenticazione Pass-through è configurata tramite Azure AD Connect, che usa un agent locale per ricevere le richieste di convalida delle password che gli arrivano da Azure AD.

Questo tipo di autenticazione è supportata per tutti i Browser e i client Office che supportano l’autenticazione moderna. Non sono supportati invece i client di posta elettronica nativi su dispositivi mobili.

 

Come funziona l’autenticazione Pass-through di Azure AD

Quando un utente inserisce nome utente e password nella pagina di accesso di Azure AD, le credenziali vengono inserite nella coda del connettore presente in Azure AD per poter essere poi convalidate in Active Directory. La convalida viene eseguita secondo una modalità simile a quella delle password in Active Directory Federation Services (ADFS). A questo punto il domain controller locale valuta la richiesta e restituisce una risposta al connettore, che a sua volta la restituisce ad Azure AD. In figura viene mostrato lo schema di funzionamento:

Figura 1: Principio di funzionamento delll’autenticazione pass-through di Azure AD

Abilitazione dell’autenticazione pass-through di Azure AD

L’autenticazione Pass-through di Azure AD viene abilitata tramite Azure AD Connect. Procediamo quindi all’installazione di Azure AD Connect. Scarichiamo l’eseguibile da link http://go.microsoft.com/fwlink/?LinkId=615771 e lanciamo il setup

Figura 2: Setup di Azure AD Connect

Scegliamo di installare Azure AD Connect in modalità personalizzata, cliccando su Customize e nella schermata successiva facciamo clic su Install.

Figura 3: Installazione dei prerequisiti di Azure AD Connect

Dopo l’installazione dei componenti necessari, viene richiesta la selezione del metodo di accesso degli utenti. Scegliamo quindi la modalità Pass-Through Authentication. Gli utenti potranno accedere ai servizi cloud Microsoft, come ad esempio Office 365, usando la stessa password specificata nella rete locale. La password degli utenti verrà convalidata contattando il domain controller locale.

Figura 4: Scelta della modalità di autenticazione Pass-through

Inseriamo le credenziali per autenticarci al Tenant di Azure AD. Consiglio di usare un account nel dominio onmicrosoft.com predefinito, in modo tale che l’accesso al Tenant non vi venga precluso in caso di indisponibilità del/dei domain controller.

Figura 5: Connessione al Tenant di Azure AD

Per connettersi a Servizi di dominio di Active Directory, Azure AD Connect richiede le credenziali di un account con privilegi di Enterprise Admin. Inseriamo le credenziali corrette e facciamo clic su Add Directory.

Figura 6: Connessione alla foresta locale

Nella schermata successiva ci verranno presentati i domini UPN che sono stati verificati (nel mio caso nicolaferrini.cloud). Assicuriamoci che i domini da usare siano stati verificati in Azure AD e che siano stati aggiunti precedentemente nella console di Active Directory Domains and Trusts.

Figura 7: Aggiunta del nuovo suffisso UPN alla console di Active Directory Domains and Trusts

Figura 8: Verifica dei domini visibili nel Tenant di Azure AD

Di default vengono sincronizzati tutti i domini e le unità organizzative (OU). Per escludere alcuni domini o unità organizzative dalla sincronizzazione con Azure AD, è possibile deselezionarli. Nel mio caso ho messo tutti gli utenti nella OU chiamata Office365 e ho deciso di sincronizzare solo questa OU.

Figura 9: Impostazione del filtro relativo ai domini e alle OU da sincronizzare

Nella schermata relativa all’Identificazione univoca degli utenti lasciamo le configurazioni predefinite e facciamo clic su Next.

Figura 10: parametri per l’identificazione univoca degli utenti

Decidiamo a questo punto se vogliamo filtrare alcuni gruppi della nostra Directory locale. Nel caso lo vogliamo fare, magari perché abbiamo individuato un gruppo di utenti da utilizzare per un test, utilizziamo la notazione LDAP, indicando il distinguished name del gruppo da filtrare.

Figura 11: Scelta di un eventuale gruppo di AD da filtrare

Nella schermata delle funzionalità aggiuntive lasciamo tutto invariato. Poiché abbiamo scelto l’autenticazione Pass-through, l’opzione di sincronizzazione delle password è abilitata di default per garantire il supporto per i client legacy (come ad esempio i dispositivi mobili) e come opzione di backup. Questa opzione ovviamente non è obbligatoria, in quanto, come si è già detto, per alcune aziende è importante che le password non vengano portate nel Cloud.

Figura 12: Scelta facoltativa della password synchronization

Figura 13: Schermata finale di conferma

Dopo aver cliccato su Install partirà il processo di configurazione di Azure AD Connect, come mostrato in figura:

Figura 14: Configurazione del connettore di Azure AD Connect

Terminata la configurazione ci apparirà la schermata finale che ci avviserà dell’avvenuta installazione. Nel mio caso ho ricevuto un avviso che indicava che alcune funzionalità dell’autenticazione Pass-through potrebbero non funzionare in quanto alcune porte sono bloccate.

Per il corretto funzionamento è necessario infatti che siano abilitate le seguenti porte verso il server che esegue il tool di Azure AD Connect:

Numero della porta

Descrizione

80 Abilita il traffico HTTP in uscita per la convalida di sicurezza quale gli elenchi di revoche dei certificati SSL.
443 Abilita l’autenticazione utente con Azure AD.
8080/443 Abilita la sequenza di bootstrap del connettore e l’aggiornamento automatico del connettore.
9090

Abilita la registrazione del connettore (necessaria solo per il processo di registrazione del connettore).

9091

Abilita il rinnovo automatico dei certificati di attendibilità del connettore.

9352, 5671

Abilita la comunicazione tra il connettore e il servizio di Azure AD per le richieste in ingresso.

9350

Facoltativo, consente prestazioni migliori per le richieste in ingresso.

10100–10120

Abilita le risposte dal connettore ad Azure AD.

Figura 15: Configurazione completata

A questo punto ho testato la funzionalità collegandomi al portare https://login.microsoftonline.com ed inserendo le credenziali di un utente locale presente nella OU chiamata Office365 che ho deciso di sincronizzare. Mi è apparsa la schermata “Tentativo di accesso per conto dell’utente” e sono riuscito a loggarmi senza difficoltà.

Figura 16: Accesso dal portale login.microsoftonline.com

Figura 17: Tentativo di accesso per conto dell’utente

Figura 18: Accesso effettuato

Alta disponibilità dell’autenticazione Pass-through di Azure AD

Sicuramente avere un solo server per l’autenticazione di Azure AD rappresenta un single point of failure. Di Di default il primo connettore dell’autenticazione Pass-through viene installato nel server dove avete installato Azure AD Connect. Per distribuire un secondo connettore in un altro server per garantire disponibilità elevata e bilanciamento del carico delle richieste di autenticazione basta scaricare l’Azure AD Application Proxy Connector sul server desiderato, come mostrato in figura:

Figura 19: Download dell’Azure AD Application Proxy Connector

Una volta scaricato Azure AD Application Proxy Connector eseguite un prompt di PowerShell con privilegi amministrativi ed eseguite il comando:

AADApplicationProxyConnectorInstaller.exe REGISTERCONNECTOR="false" /q

Successivamente è necessario registrare il connettore con Azure AD per l’autenticazione Pass-through con la seguente procedura:

  1. Aprire una finestra di PowerShell come amministratore
  2. Passare a C:\Programmi\Microsoft AAD App Proxy Connector ed eseguire lo script
    .\RegisterConnector.ps1 -modulePath “C:\Program Files\Microsoft AAD App Proxy Connector\Modules\” -moduleName “AppProxyPSModule” -Feature PassthroughAuthentication
  3. Inserire le credenziali del proprio account amministratore del Tenant Azure AD.

Figura 20: Configurazione di Azure AD Application Proxy Connector sul secondo server

Conclusioni

L’Autenticazione Pass-through di Azure AD semplifica enormemente gli scenari di autenticazione degli utenti, dando la possibilità di evitare che le password vengano sincronizzate con il Cloud e l’autenticazione degli utenti continui ad essere gestita tramite i Domain Controller locali.