Windows Identity Foundation (WIF) [pronunciato "dab ai ef"] è in RTM. Stiamo parlando del progetto che aveva in alfa il nome "Zermatt" e successivamente in beta 1 e 2 "Geneva".
Per chi non conoscesse queste tecnologie WIF è:
- il nuovo modello di sicurezza di WCF che rimpiazza totalmente il modello ed i claim della versione 3.0 e 3.5. In questo nuovo modello si può conservare il mapping claim <--> ruoli in modo da rendere facile la migrazione del codice esistente
- un set di tecnologie basate su Claim e sui protocolli standard WS-Trust e WS-Federation, e di conseguenza interoperabile con altre tecnologie di altri sistemi operativi
- un modo per togliere il processo di autenticazione/autorizzazione dalle applicazioni ed esternalizzarle. Questo porta ad una serie di vantaggi tra cui la scalabilità dei servizi che hanno massicci carichi di autenticazione e controllo dei ruoli
- C'è molto altro ma per dirla in parole povere, come sviluppatori, project manager o architetti .... ci tocca :)
Chi inizia oggi non deve preoccuparsi di nulla. Go and use it.
Una piccola nota per chi come il sottoscritto ha prodotto un bel po' di codice.
Le modifiche durante tutto il corso delle alfa e beta sono state tante e significative, ma questo è più che ovvio. Fino alla beta 2 le modifiche erano anche ben documentate.
Poi viene annunciata a PDC 2009 la RTM (o RTW come la chiamano ora) e il team blogga i vari documenti. Tra questi un pdf che dovrebbe colmare il gap tra la beta2 e la RTM. Peccato che la documentazione sia totalmente insufficiente e le differenze sono molte di più e non documentate. Prontamente ho aperto un bug di documentazione su connect se qualcuno fosse interessato a votarlo.
Per ricapitolare, WIF è un'iniziativa in cui sono coinvolti questi attori:
- Il pacchetto di redist che va solo sul server. Viene fornito come .msu (update) per Windows Vista/2008 e Windows 7/2008R2. Il lato client funziona senza dover installare nulla perché WCF è già "federation aware" e non ha bisogno di altri assembly per lavorare con WIF.
Con gli assembly lato server si possono sviluppare le "Relaying Party" (web app, servizi, etc.) ma anche STS (Secure Token Service) sia di tipo "Identity Provider" che di tipo "Trasformatori di Claim".
- Il pacchetto SDK (che non contiene quello di redist) destinato agli sviluppatori con help ed esempi.
- Cardspace 2. Tutt'ora in beta 2 non usa il Framework come la versione 1 di Cardspace in modo da rendere super-snello il suo deploy.
- ADFS2. È ancora in beta 2 e si chiamava Geneva Server. In pratica è un add-on per Active Directory per far si che AD sia anche un STS per le tecnologie WIF.
Developer Center:
http://msdn.microsoft.com/en-us/security/aa570351.aspx
Redist:
http://www.microsoft.com/downloads/details.aspx?FamilyID=eb9c345f-e830-40b8-a5fe-ae7a864c4d76&displaylang=en
SDK:
http://www.microsoft.com/downloads/details.aspx?familyid=C148B2DF-C7AF-46BB-9162-2C9422208504&displaylang=en