Per poter integrare le applicazioni Windows Azure con il proprio dominio Active Directory on-premise si possono scegliere due soluzioni: Azure Connect e Access Control Service.
- Azure Connect: lavora a livello di “connettività” e permette di integrare le applicazioni Azure (web role e worker role) nel proprio dominio Active Directory on-premise come se l’applicazione fosse installata in un server all’interno della rete aziendale.
- Access Control Service: permette di effettuare autenticazione Windows (AD ) sull’applicazione Azure, quindi Single Sign-On tra Active Directory e l’applicazione Windows Azure
Azure Connect
Per poter includere l’applicazione Azure nel proprio dominio Active Directory sono necessarie le seguenti azioni:
- Configurazione di Azure: usando il Management Portal si crea un token chiamato Activation Token
- Configurazione dell’applicazione Azure: da Visual Studio si attiva il ruolo per Azure Connect attraverso l’interfaccia che viene installata con l’ SDK di Azure e si inserisce il token creato prima.
- A questo punto nei Settings del ruolo devono essere obbligatoriamente impostati alcuni parametri come “EnableJoinDomain” a true, il FQDN del dominio e del server Domain Controller, un account di dominio comprensivo di password che è abilitato ad accedere al dominio e il DNS Server (che può essere il nome del domain controller).
- Installazione Endpoint Software: dal Management Portal cliccando sull’ icona “Install Local Endpoint” viene mostrato un link dove poter scaricare il software associato al token generato prima. Questo software va installato sul Domain Controller e su tutti i server che ospitano le risorse necessarie all’applicazione Azure, quali SQL Server, Web Server ecc.
Links:
- http://msdn.microsoft.com/en-us/library/windowsazure/gg432964.aspx
- http://msdn.microsoft.com/en-us/library/windowsazure/ff934690.aspx
- http://msdn.microsoft.com/en-us/library/windowsazure/gg433029.aspx
Access Control Service
Per poter abilitare un’applicazione Azure con l’autenticazione Active Directory del proprio dominio on-premise, sono necessari i seguenti componenti:
- Active Directory Federation Services 2.0: ADFS 2.0 permette di accedere ad applicazioni nel cloud mantenendo un livello di sicurezza basato su AD attraverso un’infrastruttura claim-based. Questo componente è scaricabile a questo indirizzo: http://www.microsoft.com/download/en/details.aspx?id=10909 (non è sufficiente abilitare il ruolo relativo in Windows Server 2008 in quanto viene abilitata la versione 1.0 e non la 2.0).
- Windows Identity Foundation: è necessario installare l’ SDK relativo per poter aggiungere all’applicazione Azure il Security Token Service che effettuerà l’autenticazione AD attraverso ADFS 2.0 opportunamente configurato nella rete aziendale.
Una volta configurato ADFS 2.0 e l’applicazione Azure, quando viene effettuato un accesso a quest’ultima vengono intrapresi i seguenti passi:
- L’ utente effettua l’accesso all’ applicazione Azure che in questo contesto viene chiamata Relying Party (con l’ aggiunta di Windows Identity Foundation (WIF) utilizza i token generati da Access Control Service per effettuare l’autenticazione). A seguito della richiesta WIF riconosce che l’ url è protetto e l’ utente che sta effettuando la chiamata non è ancora autenticato, quindi effettua un redirect ad Azure ACS.
- ACS riconosce che l’ utente non è autenticato e in base alle impostazioni opportunamente effettuate attraverso il Management Portal, redirige la richiesta verso ADFS 2.0 del dominio AD.
- ADFS 2.0 preleva il contesto dell’ utente che sta effettuando la chiamata, gli assegna un token SAML e redirige la richiesta verso ACS mettendo nel corpo del messaggio il token assegnato.
- A questo punto ACS valida la firma del token SAML, crea il suo token, aggiunge le CLAIM configurate e aggiunge la sua firma. In fine redirige la richiesta verso l’ applicazione Azure.
- Questa attraverso WIF identifica che la richiesta è autenticata e restituisce la pagine richiesta. Inoltre crea un cookie che viene inviato all’ utente e che il browser utilizza per ogni successiva richiesta.
Links:
- http://www.microsoft.com/download/en/details.aspx?id=13789 (Single Sign-On from Active Directory to a Windows Azure Application Whitepaper)
- http://www.developerfusion.com/article/121561/integrating-active-directory-into-azure/ (step-by-step guide)
- http://acs.codeplex.com/ (ACS 2.0 Samples and Documentation)