Active Directory Federation Services 2 Active Directory Federation Services 2.0 Evoluzione del Single-Sign-On e Federation Mario Fontana Senior Software Architect - Security Developer & Platform Group - Microsoft http://blogs.msdn.com/mariofontana International Association of Software Architects IASA Chapter Italy : Founder & CEO
Agenda Il Problema dell’autenticazione nelle architetture Il modello di sicurezza Claims-Based ADFS 2.0 Overview Un esempio completo con Sharepoint, Office e ADFS Interoperabilità
Il problema dell’autenticazione Ogni applicazione deve gestire due funzioni: Autenticare l’utente Ottenere informazioni sull’utente per le funzioni di autorizzazione e customizzazione della UX Esistono molte tecnologie differenti : Name/password, X.509, Kerberos, SAML, LDAP, … Le applicazioni oggi si fanno carico di tutti gli aspetti di autenticazione Se l’esercizio vuole cambiare policy di autenticazione è necessario mettere mano alle singole applicazioni. Soluzione : claims-based Security/Identity Una architettura che ci permetta di nascondere alle applicazioni tutti I dettagli dell’autenticazione degli utenti Uso di protocolli standard non legati alle infrastrutture sistemistiche Invio di informazioni sull’utente alle applicazioni in relazione alle attività che sta esenguedo. Cambiamento delle tecniche di autenticazione dopo il deployment senza modifiche al codice.
IDP - Identity Provider STS 1) Ottiene il token Token 3) I claims vengono estratti ed utilizzati Client Applicazione/ Servizio 2) Invia il token Token
Cosa intendiamo per Digital Identity Claim 1 Claim 2 Claim … Claim n Token Esempio di claim nome Email Gruppo Ruolo Identità Informazioni Tokens (Security Tokens) Claims Queste informazioni vengono usate dalle applicazioni per: Autorizzazione. Personalizzazione.
Claims Un claim è una asserzione (es. nome,key, group, privilege, capability, ....) rilasciata da un’entità per un’altra entità. Claims sono un sovra insieme dei Ruoli. Claims possono essere molto flessibili “Il nome del soggetto è Mario Fontana” “L’indirizzo del soggetto è mario.fontana@microsoft.com” “Il soggetto è nel ruolo di Manager” “Il soggetto appartiene al dipartimento di Ingegneria” “Il soggetto ha il permesso di accedere all’applicazione X” “Il soggetto può usare la risorsa Y fino alle 5pm di Giovedì”
Claims-Based Identity Identity Provider Recupero claims, Trasformazione per l’applicazione trust Autenticazione (RST) Ritorna un Token (RSTR) Invio del token all’applicazione Relaying party (RP)
ADFS 2.0 SQL Attribute Active Directory Store App WIF Client trust Active Directory Active Directory Federation Services 2.0 App WIF Client Relying Party
Protocolli Per trasportare i Security Token esistono 2 classi di specifiche standard di riferimento WS-* WS-Security, WS-Trust, WS-Federation (WSFED) Sviluppata originariamente da : BEA Systems, BMC Software, CA, Inc., IBM, Layer 7 Technologies, Microsoft, Novell, Ping Identity, e VeriSign. Standard OASIS SAML 2.0 Protocol Convergenza tra SAML 1.1 Protocol, Liberty ID-FF1.2 e Shibboleth
La famiglia «Geneva» Active Directory Federation Services (ADFS) 2.0 Evoluzione di ADFS presente in Windows Server 2003 R2 e successivi. Cardspace 2.0 Windows Identity Foundation (WIF) Queste 3 tecnologie erano conosciute con il code-name “Geneva”
ADFS 2.0 Security Token Service per AD Federation Trust Manager Identity & Federation Provider Federation Trust Manager Automatizza il trust management via metadata Basato su standard WS-* e SAML 2.0 Protocol Token SAML 1.1 e Token SAML 2.0 Provider per Information Cards Per CardSpace e altri Identity Selectors
ADFS 2.0 Architecture ADFS 2.0 AD DS/AD LDS SQL Protocol Hosting (WS-*, SAML 2.0) Information Card Issuance Service Trust and Policy Management Services WMI Provider Configuration Token/Claim Issuance Engine Identity Store Interface Policy Store Interface AD DS/AD LDS User Attribute Store SQL Policy and configuration Store
SharePoint 2007 – Identity Flow 3/29/2017 2:25 AM SharePoint 2007 – Identity Flow Windows ASP.Net (FBA) SAML Web SSO Windows integrated Roles protected Membership & Role Providers Anonymous access Windows Identity Claims Based Identity Claims protected Trusted sub-systems Web SSO WIF WIF ADFS 2.0 Authentication methods Access control Services Application Framework Auth App logic SharePoint Web Application SharePoint Service Applications Client Content Database Windows Identity © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Scenario Configurare ADFS per rilasciare tokens a SP Configurare SP per accettare tokens da ADFS Domain Controller ADFS 2.0 Contososrv01 https://sts1.contoso.com Sharepoint contososrv02 Dare accessi alle applicazioni SP basandosi sui Claims Contoso.com
Cosa è la Federazione? Un insieme di domini cha stabiliscono da un punto di vista organizzativo un livello di Trust. Utenti di un dominio possono accedere a risorse (es: applicazioni) in altri domini senza duplicare gli account tra i sistemi! I sistemi federati possono utilizzare tecnologie diverse all’interno della propria realtà MA possono interoperare a livello cross-domain tramite protocolli standard!
Scenario Federato Client Relying Party Azienda 2/ Dipartimento 2 trust Active Directory Federation Services 2.0 trust ADFS/ altro… Client Relying Party
Scenario Stabilire la federazione: accettare tokens da fabrikam Stabilire la federazione: rilasciare tokens per contoso Domain Controller ADFS 2.0 Contososrv01 https://sts1.contoso.com Domain Controller ADFS 2.0 fabrikamsrv01 https://sts2.fabrikam.com Sharepoint contososrv02 Experience!! Client fabrikamclt01 Contoso.com Fabrikam.com
Interoperabilità Sun OpenSSO Novell Access Manager CA SiteMinder e CA Federation Manager Shibboleth 2.0 ICAR
Approfondimenti Sito Ufficiale Microsoft per l’Identity Management Geneva Server in due parole ADFS 2.0 (Beta 2) e Sharepoint 2007 Microsoft e il protocollo SAML 2.0 Tematiche di Interoperabilità: Gruppo di discussione IASA: http://www.linkedin.com/groups?home=&gid=2567658&trk=anet_ug_hm Whitepapers di interoperabilità: http://blogs.msdn.com/italy/archive/2009/05/15/teched-na-disponibili-i-whitepaper-per-interoperabilit-con-novell-access-manager-e-sun-opensso-enterprise.aspx http://download.microsoft.com/download/C/F/D/CFD1D9C8-EBA4-4780-B34B-DBEB5A4792BF/CA-ADFS%20Interop.pdf
3/29/2017 2:25 AM © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.