| piergiorgio.malusardi@microsoft.com | Active Directory Federation Services.

Post on 01-May-2015

243 views 1 download

Transcript of | piergiorgio.malusardi@microsoft.com | Active Directory Federation Services.

| piergiorgio.malusardi@microsoft.com |

Active Directory Federation ServicesActive Directory Federation Services

| piergiorgio.malusardi@microsoft.com |

Agenda

Estendere l’accesso alle organizzazioniVisione

Problemi

ADFS WS-* Eredità delle specificheInteroperabilità multi-vendor

Active Directory Federation ServicesArchitettura e Componenti

Gestione degli accessi con i claim

Requirement

Configurazione

Demo

| piergiorgio.malusardi@microsoft.com |

Estendere l’accessoVisione

Log on unico, accesso sicuro a tutto

Due filosofie di base complementari:

Basarsi su identità e servizi nel modo più ampio possibile

Estendere agli “irraggiungibili” attraverso soluzioni di integrazione come MIIS

| piergiorgio.malusardi@microsoft.com |

Identità e gestione degli accessiActive Directory Federation Service

Active DirectoryLogon a Windows

Autenticazione flessibile Kerberos X509 v3/Smartcard/PKI VPN/802.1x/RADIUS LDAP Passport/Digest/Basic (Web) SSPI/SPNEGO

Single Sign-on verso: File/Print server Windows Applicazioni Microsoft 390/AS400 (Host Integration Server) ERP (BizTalk®, SharePoint® ESSO) Applicazioni di terze parti Applicazioni web via IIS Unix/J2EE (Services for Unix, Vintela/Centrify)

Exchange

Web APPS

File Share

Windows IntegratedApplications

| piergiorgio.malusardi@microsoft.com |

DipendentiApplicazioniPiattaforma

Fornitori ele loro applicazioni

Partner ele loro applicazioni

Dipendenti remotie virtuali

Clienti

Identità e gestione degli accessiLe sfide

| piergiorgio.malusardi@microsoft.com |

Soluzione: Federazione delle identità e gestione degli accessi

RichiesteTecnologie basate su standard

Identificazione e autorizzazione distribuita

Attraverso i confini: sicurezza,

dipartimentali,

delle organizzazioni,

di piattaforma

Visione di ADFSLog on unico, accesso sicuro a tutto

Basarsi su identità e servizi più estesamente possibile

| piergiorgio.malusardi@microsoft.com |

SecuritySecurityTokenToken

ServiceService

Ricevente Ricevente HTTPHTTP

messaggi HTTPmessaggi HTTP

WS-FederationCross-organisation, interoperabilità multi-vendor

Web Services Federation Language

Definisce messaggi per consentire a realm di sicurezza di federarsi e scambiarsi token di sicurezza

Costruito su WS-Security e WS-Trust

Ampio supporto

Autori: BEA, IBM, Microsoft, RSA, VeriSign

Interoperabilità: IBM, OpenNetwork, Oblix, Netegrity, RSA, PingID

Il modello definisce due profili

Passive (Web browser) client – HTTP/S

Active (smart/rich) client – SOAP

messaggi SOAPmessaggi SOAPRiceventeRicevente

SOAPSOAP

ADFS v2

ADFS v1

| piergiorgio.malusardi@microsoft.com |

Passive Requestor Profile Supportato da ADFSv1 in Windows Server 2003 R2

Unione di WS-Federation e WS-Trust per client browser (passive)

Adesione implicita alle politiche seguendo le redirezioni

Acquisizione implicita dei token attraverso messaggi HTTP

Autenticazione richiede trasporto sicuro (HTTPS)

Non può fornire “prova di possesso” dei token

Cache dei token limitata (in base al tempo)

Token riutilizzabili

| piergiorgio.malusardi@microsoft.com |

Active Requestor ProfileVersioni future di ADFS

Unione di WS-Federation e WS-Trust per client compatibili SOAP/XML (active)

Determinazione esplicita, dalle policy, della necessità di token

Richiesta esplicita di token con messaggi SOAP

Strong authentication per tutte le richieste

Può fornire “proof of possession” per i token

Supporta la delega

Client possono fornire token ai web service per uso in propria vece

Consente cache “ricca” dei token lato client

Migliora le performance

| piergiorgio.malusardi@microsoft.com |

OrganizzazioneOrganizzazioneBB

Spazio nomiSpazio nomiprivatoprivato

OrganizzazioneOrganizzazioneAA

Spazio nomiSpazio nomiprivatoprivato

ADFS Identity FederationProietta le identità AD in altri Realm

FederationFederationServer Server

FederationFederation ServerServer

Federation ServersFederation ServersGestisce:Gestisce:• Trust – chiaviTrust – chiavi• Securezza – Claim necessariSecurezza – Claim necessari• Privacy – Claims consentitiPrivacy – Claims consentiti• Audit – Identità, autoritàAudit – Identità, autorità

| piergiorgio.malusardi@microsoft.com |

Architettura ADFSActive Directory

Autentica gli utenti

Gestisce gli attributi usati per popolare i claim

Federation Service (FS)

STS rilascia i token di sicurezza

Gestisce le politiche di fiducia della federazione

FS Proxy (FS-P)

Proxy per le richieste di token dei client

Fornisce UI per i client browser

Web Server SSO Agent

Forza l’autenticazione degli utenti

Crea il contesto di autorizzazione degli utenti

FS

browser

WebServer

FS-PAD or ADAM

ApplicationSSO Agent

Nota:

ADFS supporta foreste W2K e W2K3

FS & FS-P sono co-locati per default, possono essere separati

FS, FS-P e SSO agent richiedono IISv6 W2K3 R2

In ADFSv1 (W2K03 R2) solo client browser

HTTPS

LPC/Web Methods

Windows Authentication/L

DAP

| piergiorgio.malusardi@microsoft.com |

Federation Service

FS

browser

WebServer

FS-P

ApplicationSSO Agent

Servizio ospitato da ASP.NET su IISv6 – Windows Server 2003 R2

Gestione delle Federation PolicyStabilisce l’affidabilità di token di sicurezza firmati attraverso la distribuzione di chiavi basate su certificati

Definisce i tipi di token/claim e spazi dei nomi condivisi per i Realm federati

Generazione dei token di sicurezzaRecupera gli attributi per la generazione dei claim da AD (o ADAM) via LDAP

Se necessario trasforma i claim tra spazio dei nomi interno e federato

Costruisce token di sicurezza firmati e li spedisce al FS-P

Costruisce cookie “User SSO” e li spedisce al FS-P

Autenticazione utenteValida ID/Password via bind LDAP per Forms-based authentication

| piergiorgio.malusardi@microsoft.com |

Federation Service Proxy

FS

browser

WebServer

FS-P

ApplicationSSO Agent

Servizio ospitato da ASP.NET su IISv6 – Windows Server 2003 R2

Autenticazione utenti

Fornisce la UI per la Home Realm Discovery e Forms-based Logon

Autentica gli utenti per autenticazioni Windows Integrated e client SSL

Scrive i cookie “User SSO” sul browser (simile al Kerberos TGT)

Processamento dei token di sicurezza

Richiede i token di sicurezza per i client dal FS

Gire i token al web server via “POST redirect” attraverso il browser

| piergiorgio.malusardi@microsoft.com |

Web Server SSO Agent

ISAPI extension per IISv6 – Windows Server 2003 R2Autenticazione utente

Intercetta le richieste URL GET ridirige gli utenti non autenticati a FSScrive cookie “Web Server SSO” sul browser (simile a Kerberos Service Ticket)

Autorizzazione utente (App non claim-aware)Crea token NT per l’impersonizzazione (solo utenti AD)

Autorizzazione utente (App claim-aware)Popola il contesto ASP.NET GenericPrincipal con il contenuto del claim per supportare IsInRole()Fornisce claim “crudi” alle applicazioni

Elaborazione dei tokenValida i token degli utenti ed esegue il parsing dei claim nei token

FS

browser

WebServer

FS-P

ApplicationSSO Agent

| piergiorgio.malusardi@microsoft.com |

STS: Configurazione di claims e politiche di trust (out of band)

Browser: Richiesta di applicazioni e token di sicurezza (HTTPS)

ADFS Trust e flusso dei messaggi

InternetFS-A

Manufacturer

ClientWS

IntranetForest

FS-R

Federation Trust

Fire Wall

Fire Wall

Fire Wall

Corporate Purchaser

Parts Supplier

DMZForest

FS-P

Client

Plant Inventory Clerk

| piergiorgio.malusardi@microsoft.com |

ADFS: Token di sicurezza supportati

Rilasciati solo token SAML (Security Assertion Markup Language)

Token non criptatiTutti i messaggi sono su HTTPS

Token sono firmati(default) Firmati con chiave RSA privata e firma verificata con chiave pubblica ricavata da un certificato X.509

(opzionale) Possono essere firmati con chiavi di sessione Kerberos

| piergiorgio.malusardi@microsoft.com |

ADFS: Token di sicurezza supportati

Claim sono asserzioni fatte riguardo all’utente

Capiti da entrambi i partner della federazione ADFS

Usati per autorizzazione nelle applicazioni.

Tipi di claim interoperabili di WS-Federation

Identità

User Principal Name (UPN)

Indirizzo e-mail

Common Name (ogni stringa)

Gruppi

Personalizzato

Solo dati di autorizzazione in ADFS-to-ADFS

| piergiorgio.malusardi@microsoft.com |

Esempio di Claim Set

IdentityIdentity

GaryW@org.comGaryW@org.com

GroupGroup

DoctorDoctorAdministratorAdministrator

PurchaserPurchaser

CustomCustom

Office Location:Office Location:ManchesterManchester

Reports to:Reports to:Senior OfficerSenior Officer

| piergiorgio.malusardi@microsoft.com |

La potenza dei claim

I claim possono essere…

Usati per fornire informazioni arbitrarie sull’utente

Modificati in punti diversi via via che vengono passati

Popolati da AD e ADAM

Controlati in uno store centralizzato

Costruiti a partire da varie sorgenti usando il custom claim transformation module

Spediti da un partner compatibile con il profilo WS-Federation Passive Requestor

| piergiorgio.malusardi@microsoft.com |

Mappatura dei claim ADFS

Claim organisationalSito delle risorse e sito degli accountInsieme globale di claim condiviso da tutte le applicazioni del sito delle risorse

Mappatura dei claim lato sito degli accountI claim organisational sono popolati da AD – Gruppi, …I claim organisational sono mappati su claim outgoing

Mappatura dei claim lato sito delle risorseMappatura dei claim incoming

Mappa i claim incoming su claim organisational

Mappatura dei client applicativiI claim organisational sono abilitati/disabilitati applicazione per applicazione

| piergiorgio.malusardi@microsoft.com |

Mappatura dei claim ADFS Raccomandazioni

Necessario decidere una convenzione dei nomi per i claim nelle fasi iniziali del progetto

I claim organisational sono globali e condivisi da tutte le applicazioni

Si devono usare nomi diversi per i claim Incoming/Outgoing rispetto a quelli Organisational?

Federazione interna – nomi uguali ovunque

Federazione esterna – nomi differenti

| piergiorgio.malusardi@microsoft.com |

Flusso dei claim in federazioni ADFS

AD Store

AccountOrganizational

ClaimsTransformation

Outgoing Claims

Cla

ims

Tra

ns

mit

ted

Incoming Claims

Resource Organizational

Claims

Resource Application

Ac

co

un

tP

artne

rR

es

ou

rce

A

pp

lic

ati

on

Populates

Transformation Selected

| piergiorgio.malusardi@microsoft.com |

Prerequisiti di ADFS

Certificati per la firma digitale

I certificati per i Web server sono OK

Piattaforma di sviluppo

.NET 2.0

ASP.NET V2

.NET Framework v2.0 per FS e WSA

Windows 2003 Server SP1, R2

DNS

AD

| piergiorgio.malusardi@microsoft.com |

Certificati SSL

Certificato per Server Authentication

Certificato SSL standard per Server Authentication

Richiesto per proteggere il canale su cui i token sono trasmessi

La gestione è effettuata attraverso IIS Admin Tool

Certificato per FSP Client

Certificato SSL standard per Server Authentication

Consente al FS di autenticare le chiamate fatte dal FSP

Configurato nella MMC FSP MMC e nella FS MMC

| piergiorgio.malusardi@microsoft.com |

Federation ServerCertificati per la firma dei token

Salvati in Local Computer My Store

Modificati attraverso la MMC di ADFS

Usati per firmare i certificati generati dal Federation Server

VerificheFS deve essere in grado di verificare i certificati rilasciati da:

se stesso,

altri FS nella farm e

partner fidati

Salvati nelle politiche di trust così da essere condivisi con gli altri FS nella farm

La catena dei certificati è inclusa

© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only.MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.