64
1 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD Consultant Architecte Direction Technique Microsoft France philippe.beraud@microsof t.com Pierre COUZY Architecte en système d'informations Division Plateforme et Ecosystème Microsoft France [email protected]

11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

Embed Size (px)

Citation preview

Page 1: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

11

Les nouveautés d'Active Directory Federation Service (AD FS) 2.0

(Release Candidate, nom de code "Geneva" Server)

Code Session : SEC207

Philippe BERAUDConsultant ArchitecteDirection TechniqueMicrosoft [email protected]

Pierre COUZYArchitecte en système d'informationsDivision Plateforme et EcosystèmeMicrosoft [email protected]

Page 2: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

33

Le parcours virtuel Logiciels + Services Identité dans le cadre des Microsoft TechDays 2010

4 sessions pour faire un point ensembleSession SEC207 "Les nouveautés d'AD FS 2.0"

Cette session !!Session SEC317 "Windows Identity Foundation pour les développeurs"

Aujourd'hui de 16h00 à 17h00Session ARC307 "Software + Services Identity Roadmap"

Lundi 8 février, de 17h30 à 18h30, à revivre prochainement en session Web

Session SEC315 "The 'M'-Based System.Identity Model for Accessing Directory Services"

Lundi 8 février, de 11h00 à 12h00, à revivre prochainement en session Web

Page 3: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

44

Objectifs de la session

Compléter la session SEC208 "La plateforme “Geneva”, le successeur d’AD FS (Active Directory Federation Services) animée lors de TechDays 2009

http://www.microsoft.com/france/vision/mstechdays09/Webcast.aspx?EID=437a7ce1-cdb7-40ed-8c04-d77193dbcade

Faire le point sur la version Release Candidate (RC) d'AD FS 2.0Illustrer quelques scénarios clés

Page 4: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

55

Sommaire

Un bref rappel sur AD FS 1.x, ses bénéfices et ses enseignementsDécouverte des composants et des protocoles d'AD FS 2.0Illustration d'une mise en œuvre type et quelques

considérations associéesUtilisation des revendicationsEn guise de synthèse…

Page 5: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

66

AD FS 1.x

Composants de Windows 2003 R2 et Windows Server 2008 (R2) pour une expérience d'authentification unique Web (Web SSO) Intranet, Extranet et fédérée sur Internet

Services de Federation (FS : FS-A/FS-R)Services de Federation proxy (FS-P)

Proxy client pour les demandes de jetons dans les scénarios ExtranetAgents Web SSO pour IIS 6.0 et 7.0

WIA, Ex. Outlook Web Access (OWA) 2007 Fondé sur les revendications (claims), Ex. Office SharePoint Server 2007

Ces composants sont évalués Critères Communs et certifiés EAL4+http://www.niap-ccevs.org/cc-scheme/st/vid10184/

Page 6: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

77

Interopérabilité AD FS 1.x

Protocoles AD FS 1.xDocumentés dans le cadre de Windows Server Protocols (WSPP)

http://msdn.microsoft.com/en-us/library/cc197979.aspx [MS-MWBF] Microsoft Web Browser Federated Sign-On Protocol

Specification[MS-MWBE] Microsoft Web Browser Federated Sign-On Protocol

Extensions

Solutions d’identité interopérables avec AD FS 1.xBMC Universal Identity Federator, CA eTrust SiteMinder Federation Security Services (6 SP5), IBM Tivoli Federated Identity Manager, Internet2 Shibboleth System (1.3), Novell Access Manager, Oracle Identity Federation, Ping Identity PingFederate Server, RSA Federated Identity Manager (4), Sun OpenSSO, symLABS Federated Identity Suite, Version3 Enhanced Authentication Edition, etc.

Page 7: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

88

Interopérabilité AD FS 1.x

Solutions d’identité interopérablesGuides d’intégration

CA SiteMinder Federation Security Services, IBM Tivoli Federated Identity Manager, Oracle Identity Federation, RSA Federated Identity Manager, Internet2 Shibboleth

Agents Web pour AD FS 1.xSuite Centrify DirectControlQuest Vintela Single Sign-on for Java (VSJ)Toolkit SourceId WS-FederationSDK Ping Identity PingFederateWebcasts de mise en œuvre sur le site MS France Interopérabilité - Interopérabilité des identités

http://www.microsoft.com/france/interop/ressources/webcasts.aspx

Page 8: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

99

Quelques enseignements tirés d’AD FS 1.x

BénéficesCoûts de gestion des identités réduitExpérience Web SSO Intranet, Extranet et fédéréeModèle d’autorisation fondé sur les revendicationsInteropérabilité inter plate-forme

Mais…Gestion des politiques de confiance

Les MAJ requièrent une intervention des deux côtés (FS-A/FS-P)Découverte du domaine d’origine

Trop compliquée pour certaines populations d'utilisateursFacteurs limitant du navigateur

N’est pas à même de fournir une preuve de possession (attaque par relecture)N’est pas à même de répondre directement à une politique

Page 9: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1010

Sommaire

Un bref rappel sur AD FS 1.x, ses bénéfices et ses enseignementsDécouverte des protocoles et composants d'AD FS 2.0Illustration d'une mise en œuvre type et quelques

considérations associéesUtilisation des revendicationsEn guise de synthèse…

Page 10: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1111

Les défis courants de l'identité fédérée

La gestion des relations de confiance est difficileLeur mise en œuvre est complexe et source d’erreurs :-(Les modifications manuelles engendrent des interruptions de services/pannes

Les standards ne garantissent pas l’interopérabilitéWS-Federation (PRP) est très largement adoptéSAML est largement implémenté, mais pas dans AD FS 1.xLes sélecteurs d’identité requièrent le support de WS-Trust

Les cartes d’information manquent de soutien en termes de STS d’entreprise

Aucun STS Microsoft "out-of-the-box" pour les cartes d’information gérées

Page 11: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1212

Contexte (et objectifs) de mise en œuvre d'AD FS 2.0

Fournir aux utilisateurs déclarés dans votre Active Directory un accès aux applications et services Web de l'interne

Expérience d'authentification unique (SSO) depuis l'interne ou à distance

Fournir aux utilisateurs déclarés dans votre Active Directory un accès aux applications et services Web d'autres organisations

Expérience de SSO vers des services fédérés, externalisés ou dans le nuage

Fournir aux utilisateurs d'une autre organisation un accès aux applications et services Web souhaités

… Indépendamment des choix de standards protocolaires

Et aussiPermettre la délégation d'identité, la réauthentification en fonction de la force d'authentification souhaitée, etc.Fournir des cartes d'informations pour optimiser et sécuriser l'accès SSO à des applications et/ou des services Web

Page 12: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1313

DémoAccéder via la fédération aux études du Burton Group

Un service de Microsoft IT pour l'interne

Page 13: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1414

Qu’est-ce qu’AD FS 2.0 ?En quelques mots…

Service de Jeton de Sécurité (STS) pour Active DirectoryFournisseur d’Identité et de FédérationGestionnaire de confiance de Fédération

Automatise la gestion des relations de confiance à l'aide de métadonnées

Fournisseur de cartes d’information gérées pour Active Directory

Windows CardSpace 2.0 et sélecteurs d’identité tiers

Fondés, en termes de protocoles, sur des standards et interopérables par défaut

Page 14: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1515

Protocoles AD FS 2.0

Support du standard OASIS WS-Federation 1.2http://docs.oasis-open.org/wsfed/federation/v1.2/ws-federation.pdf

Dans la pratiqueSection § 13 pour les navigateurs, compatible avec les déploiements WS-Federation PRP existants Métadonnées WS-Federation harmonisées avec les métadonnées SAML 2.0 : dialecte commun pour l'expression d'exigences et de valeurs en termes de revendications

Extension de la spécification Metadata for the OASIS Security Assertion Markup Language (SAML) V2.0

http://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf

Tests d'interopérabilité WS-Federation conduits avec Sun Microsystems, Novell, CA avant la Bêta 2 d'AD FS 2.0

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=9eb1f3c7-84da-40eb-b9aa-44724c98e026

Page 15: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1616

Protocoles AD FS 2.0

Support du standard OASIS WS-Trust 1.4http://docs.oasis-open.org/ws-sx/ws-trust/v1.4/os/ws-trust-1.4-spec-os.pdf Compatible avec la version 1.3 avec l'ajout de nouvelles capacités : ActAs et Challenge/Response

La plateforme “Geneva” supporte ces nouvelles capacitésActAs dans AD FS 2.0 et WIF 1.0Challenge/Response dans WIF 1.0

Page 16: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1717

Protocoles AD FS 2.0

Support du standard OASIS SAML 2.0Web SSO, Artifact Resolution, Name Identifier Management, Single Logout et Identity Provider Discovery Dans la pratique, AD FS 2.0 supporte 3 profils SAML

Modes opérationnels IdP Lite et SP LiteCf. OASIS Conformance Requiremenrs for the OASIS Security Assertion Markup Language (SAML) V2.0

http://docs.oasis-open.org/security/saml/v2.0/saml-conformance-2.0-os.pdf

Profil GSA (profil eGovernment harmonisé Liberty Alliance) 1.5http://www.projectliberty.org/liberty/content/download/4711/32210/file/Liberty_Alliance_eGov_Profile_1.5_Final.pdf

Tests d'interopérabilité SAML 2.0 Liberty Alliance passés avec succès pour ces 3 profils

Page 17: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1818

Protocoles AD FS 2.0

Sur le site Microsoft France Interopérabilitéhttp://www.microsoft.com/france/interop/ressources/documents.aspxLivre blanc "Approches technologiques pour la fédération des identités"

http://www.microsoft.com/downloads/details.aspx?FamilyID=ED4290A9-2BFB-408A-B25B-34D79D2CE971&displaylang=fr

Livre blanc "AD FS 2.0, une plateforme ouverte et interopérable pour l’authentification unique Web et la fédération des identités"

http://download.microsoft.com/documents/France/Interop/2010/ADFS20-Plateforme_Ouverte_Interoperable_Web_SSO_Federation_Identites.pdf

Page 18: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

1919

Composants AD FS 2.0

Active Directory Federation Services (AD FS) 2.0

MetadataCard Issuance Token Issuance

Management APIs and UX

Active Directory Federation Services (AD FS) 2.0 Proxy

Token Issuance

Proxy

Metadata Proxy

Configuration Database

Intranet Client

Internet Client

Account & Attribute Stores

Page 19: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2020

Composants AD FS 2.0Clients AD FS

Navigateurs clientsClients compatible WS-* (WCF, JAX-WS, etc.)Sélecteurs d'identités (Windows CardSpace ou d'autres)

Active Directory Federation Services (AD FS) 2.0

MetadataCard Issuance Token Issuance

Management APIs and UX

Active Directory Federation Services (AD FS) 2.0 Proxy

Token Issuance

Proxy

Metadata Proxy

Intranet Client

Internet ClientConfiguration Database

Account & Attribute Stores

Page 20: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2121

Composants AD FS 2.0Serveur AD FS

STS pour clients browser et SOAPService d'émission de cartes

d'information et site Web associéGestion des politiques d'émission

et d'acceptation

Active Directory Federation Services (AD FS) 2.0

MetadataCard Issuance Token Issuance

Management APIs and UX

Intranet Client

Internet Client

Active Directory Federation Services (AD FS) 2.0 Proxy

Token Issuance

Proxy

Metadata Proxy

Configuration Database

Account & Attribute Stores

Page 21: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2222

Composants AD FS 2.0Serveur AD FS - Architecture

Active Directory Federation Services (AD FS) 2.0

Management APIs and UX

WMI ProviderProtocol Hosting

(WS-*, SAML 2.0)

Identity Store Interface Policy Store Interface

Windows Identity Foundation (WIF) API

Metadata/Policy Management

Service

Information Card IssuanceService

Token/Claim Issuance Service

Configuration Database

Account & Attribute Stores

Page 22: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2323

Composants AD FS 2.0Base de données de configuration

Windows Internal Database (WID)Microsoft SQL Server 2005/2008

Intranet Client

Internet Client

Active Directory Federation Services (AD FS) 2.0

MetadataCard Issuance Token Issuance

Management APIs and UX

Active Directory Federation Services (AD FS) 2.0 Proxy

Token Issuance

Proxy

Metadata Proxy

Configuration Database

Account & Attribute Stores

Page 23: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2424

Composants AD FS 2.0Magasins de comptes et d'attributs

AD DSADAM/AD LDSSQL Server 2005/2008LDAP, etc.

Intranet Client

Internet Client

Active Directory Federation Services (AD FS) 2.0

MetadataCard Issuance Token Issuance

Management APIs and UX

Active Directory Federation Services (AD FS) 2.0 Proxy

Token Issuance

Proxy

Metadata Proxy

Configuration Database

Account & Attribute Stores

Page 24: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2525

Composants AD FS 2.0Proxy

Proxy en bordure pour les demandes de jetonSupporte l'authentification

mutuelle SSL au niveau transportExpose un WSDL distinct

Active Directory Federation Services (AD FS) 2.0 Proxy

Token Issuance

Proxy

Metadata Proxy

Intranet Client

Internet Client

Active Directory Federation Services (AD FS) 2.0

MetadataCard Issuance Token Issuance

Management APIs and UX

Configuration Database

Account & Attribute Stores

Page 25: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2626

Sommaire

Un bref rappel sur AD FS 1.x, ses bénéfices et ses enseignementsDécouverte des protocoles et composants d'AD FS 2.0Illustration d'une mise en œuvre type et quelques

considérations associéesUtilisation des revendicationsEn guise de synthèse…

Page 26: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2727

Base de données de configuration

2 options possibles :1. Windows Internal Database (WID)

Configuration via l'assistant de configuration, Fsconfig.exe ou les cmdlets Windows PowerShell

2. Instance de Microsoft SQL Server 2005/2008Configuration via Fsconfig.exe ou les cmdlets Windows PowerShellDifférentes approches de haute disponibilité avec SQL Server

Cf. High Availability Solutions Overviewhttp://go.microsoft.com/fwlink/?LinkId=179853

Support d'un point de terminaison (endpoint) SAML Artifact ResolutionSupport de la détection du rejeu d'un jeton

Profil Web SSO SAML 2.0 et profil passif de WS-Federation

Page 27: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2828

Déploiement d'une ferme

Fournit un niveau de fiabilité additionnelLes défaillances matérielles ne causent pas de perte de service

Procure des performances additionnellesConfiguration

Les serveurs AD FS "Front-End" pointent vers une base de données de configuration commune (SQL Server) ou s'appuient sur WIDL'ensemble de la configuration est conservée dans la base de données de configuration, exception faite

Des chaînes de connexion à la base de données de configurationDes événements / audits / traces de débogageDu paramétrage des traces de débogage

Page 28: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

2929

Déploiement du proxy

Requis pour l'authentification client SSL provenant d'un réseau de périmètrePossède son propre certificat d'authentification client

Approuvé pour authentifier l'utilisateurDispose d'un ensemble de pages Web distinct pour la

personnalisation Les points de terminaison WS-Trust activés sont contrôlés

depuis les serveurs AD FS 2.0 intranet

Page 29: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3030

Installation d'un serveur de fédération

Start All Programs Administrative Tools ADFS 2.0 Management

Page 30: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3131

Exemple de mise en œuvre type Fabrikam et Contoso

Ex. Scénario "Federated Document Collaboration Using Microsoft Office SharePoint Server 2007 and AD FS 2"

https://connect.microsoft.com/site642/Downloads

Dr. Frank MillerDaniel Weisman

Contoso PharmaFabrikam Research

Microsoft Office SharePoint Server 2007

Page 31: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3232

Exemple de mise en œuvre type Fabrikam et Contoso

Confiance

1. Lecture de la politique

5. Envoi des revendications

4. Envoi et obtention des re

vendications

2. A

uthe

ntific

ation

suite

à un

e

auto

-sélec

tion d'

une c

arte

Dr. Frank Miller

Confiance

https://docs.contoso.com

Windows Identity

Foundation 1.0

Microsoft Office SharePoint Server 2007

sts2.fabrikam.comMicrosoft AD FS 2.0 RC

sts1.contoso.comMicrosoft AD FS 2.0 RC

fabrikam.com

3. Obt

ention des

reve

ndications

Contoso PharmaRP

Fabrikam ResearchIP

Page 32: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3333

DémoEtablir un cadre de confiance entre Fabrikam Research et Contoso Pharma

Page 33: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3434

Support de Windows PowerShell

AD FS 2.0 intègre un support complet de Windows PowerShell pour une gestion de bout en bout

Enregistré et disponible à l'issue de l'installation

Propose un ensemble de cmdlets (préfixé par [Get|Set]-ADFS) pour la configuration et l'administration d'une instance

Aide et exemples de mise en œuvre Cf. "AD FS 2.0 Administration with Windows PowerShell"

http://technet.microsoft.com/en-us/library/ee126138(WS.10).aspxCf. "PowerShell API Overview"

http://msdn.microsoft.com/en-us/library/ee895353.aspx

Get-PSSnapin –Registered Name : Microsoft.Adfs.PowerShell PSVersion : 1.0 Description : This PowerShell snap-in contains cmdlets used to manage Microsoft Identity Server resources.

Page 34: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3535

Gestion "Zero-Touch" de la fédération

“If federation is broken. It's PKI. If it is not PKI, there's a typo. If you typed it

correctly (case counts!). It's PKI”- Laura E. Hunter

L'échange de métadonnées facilite la vie !Configuration pilotée et gestion automatisée par les métadonnées harmonisées WS-Federation

Gestion et distribution automatique des certificats au sein d'une ferme

Page 35: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3636

Sommaire

Un bref rappel sur AD FS 1.x, ses bénéfices et ses enseignementsDécouverte des protocoles et composants d'AD FS 2.0Illustration d'une mise en œuvre type et quelques

considérations associéesUtilisation des revendicationsEn guise de synthèse…

Page 36: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3737

Revendications

Une identité est un ensemble de revendications (claims) qui caractérise une personne (ou une "chose" (entité numérique)) dans le monde numérique

Une revendication est une déclaration faite sur quelqu’un/quelque chose par quelqu’un/quelque chose

Peut être un identificateur, une caractéristique ou autre choseMè[email protected], Age > 21, Employeur = Microsoft, Rôle=Architecte, etc.

Quelques exemples dans la pratique…Peut identifier un utilisateurPeut véhiculer l’appartenance à un groupe ou à un rôlePeut transporter des informations de personnalisationPeut donner ou dénier le droit de faire quelque chosePeut limiter le droit de faire quelque chose

Page 37: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3838

Revendications

Les fournisseurs d'identité doivent connaître les revendications à envoyerLes consommateurs d'identité doivent connaître les

revendications qu'ils sont susceptibles de recevoir (et/ou préciser les revendications qu'ils exigent)Un accord doit s'établir en grande partie "out-of-band",

largement simplifié par les métadonnéesDans AD FS 2.0

Les revendications attendues sont codifiées dans la politique d'acceptationLes revendications à envoyer sont codifiées dans la politique

d'émission

Page 38: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

3939

Politique d’émission des revendications

Les partenaires attendent différents types ou valeurs de revendicationsPolitique pilotée par le périmètre du (AppliesTo)

Comment sont alimentées les revendications ?Extraction de l’attribut displayName depuis le référentiel d’identité

et émission d’une revendication urn:foo:nameComment sont transformées les revendications ?

Le type de revendication urn:firstName est émis en tant que urn:givenNameLa valeur d'une revendication est modifiée via des expressions

régulières

Représentation de la politiqueModélisée en interne avec des données SQL

Page 39: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

4040

Emission des revendications

Active Directory Federation Services (AD FS) 2.0

Token/Claim Issuance Engine

Account & Attribute Stores

Configuration Database

Claims

Security Token Issuance

<RST> …</RST>

Requête jeton Réponse jeton

<RSTRC></RSTRC>

Identity Store I/F

ClaimsIssuanceEngine

Polic

y St

ore

I/F

Claims Issuance

Policy

Page 40: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

4242

Moteur de règles pour les revendications

L'émission de revendications est pilotée par un langage déclaratif fondé sur l'expression de règlesUne règle consiste en

Une partie ConditionsUne partie Emission

De multiples conditions sont supportéesToutes les conditions doivent être remplies avant que la partie Emission ne soit exécutéeLes disjonctions sont implémentées en divisant les conditions en plusieurs règles

Règle

Conditions, alors (=>) Emission

Page 41: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

4343

Exemples de syntaxe

Les règles sont exécutées séquentiellement (sans inférence)

[type == "Name", value == "EUROPE\philber"] &&[type == "AuthenticationType”, value == "SmartCard"]=> add(type = "Role", value = "Editor");

c:[type == "UPN"]=> issue(store = "SQLStore", types = ("Email", "Age"), query = "SELECT email, age FROM users WHERE name = '{0}'", param = c.value);

Règle 1

Si valeur = C, alors ajouter E

Règle 2

Si valeur = A, alors ajouter C

Règle 3

Si valeur = C, alors émettre D

Règle 4

Si valeur = B, alors émettre G

Moteur de règles pour les revendications

Page 42: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

4444

Trois types d'instructions1. Copie d'une revendication2. Nouvelle revendication3. Revendication avec une valeur issue d'un magasin d'attributs

Une instruction peut créer des revendications qui vont dans le jeton émis ou qui sont seulement utilisées pour l'évaluationDeux façons de définir les règles

En utilisant la syntaxe du langageEn utilisant l'IHM de gestion

Modèles de règle de revendicationsPass Trough or Filter an Incoming Claim, Transform an Incoming Claim, Send LDAP Attributes as Claims, Send Group Membership as a Claim, Send Claims Using a Custom Rule, Permit or Deny Users Based on an Incoming Claim, Permit All Users

Apporte le support de la testabilité, des analyses what-if et staging

Moteur de règles pour les revendications

Page 43: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

4545

DémoDéfinition d'une politique d'émission

Configurer le serveur AD FS 2.0 Contoso pour obtenir des revendications d'une base SQL Server

Schéma des tables de la base "HOL Doctors Role"Table 1 (dbo.URT)

Table 2 (dbo.TS)

Table 3 (dbo.RS)

Page 44: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

4646

DémoDéfinition d'une politique d'émission

Page 45: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

4747

DémoDéfinition d'une politique d'émission

Application au contexte de l'utilisateur [email protected] de la règle 1

Revendication d'évaluationType : http://schemas.microsoft.com/ws/2008/06/identity/claims/trialValeur: DrugTrial 1

=> add(store = "HOL Doctors Role", types =

(http://schemas.microsoft.com/ws/2008/06/identity/claims/trial), query = "select trial from dbo.TS where dbo.TS.SharePointSite =

{0}", param = "https://docs.contoso.com");

Page 46: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

4848

DémoDéfinition d'une politique d'émission

Application au contexte de l'utilisateur [email protected] de la règle 2

Revendication d'évaluationType : http://tempuri.org/claims/incomingtrialrole Valeur: auditor

c1:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"]&& c2:[Type ==

"http://schemas.microsoft.com/ws/2008/06/identity/claims/trial"]=> add(store = "HOL Doctors Role", types = ("http://tempuri.org/claims/incomingtrialrole"),

query = "select role from dbo.URT where dbo.URT.Trial = {1} and dbo.URT.UserName={0}", param = c1.Value, param c2.Value);

Page 47: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

4949

DémoDéfinition d'une politique d'émission

Application au contexte de l'utilisateur [email protected] de la règle 3

Revendication à émettreType : http://schemas.microsoft.com/ws/2008/06/identityclaims/role Valeur: sp_visitor

c:[Type == "http://tempuri.org/claims/incomingtrialrole"]=> issue(store = "HOL Doctors Role", types =

("http://schemas.microsoft.com/ws/2008/06/identityclaims/role"), query = "select dbo.RS.SharePointGroup from dbo.RS where

dbo.RS.Role = {0}", param = c.Value);

Page 48: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5050

Moteur de règles pour les revendications

Exécute au sein d'un pipeline des jeux de règles (rule set) correspondant à l'application de politiques

Acceptance transform rule set, Issuance transform rule set, Issuance Authorization rule set, Delegation authorization rule set et Impersonation authorization rule set

Ex. Pipeline d'émission Exécution successivement des politiques d'acceptation, d'autorisation

d'émission et d'émission

Identity Provider Policy

Relying Party Issuance Policy

Relying Party Authorization

Policy

Claims included in the token

Identity claims

Denied

Allowed

Normalized identity claims

Page 49: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5151

Autorisations dans le pipeline d'émission

Même langage fondé sur les revendicationsRésultat du contrôle d'accès contrôle par deux revendications

http://schemas.microsoft.com/authorization/claims/permithttp://schemas.microsoft.com/authorization/claims/deny

Evaluation selon les deux principes "Deny by default" et "Deny overrides"

La valeur de ces revendications n'a aucun impact sur le contrôle d'accès

Page 50: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5252

Autorisations dans le pipeline d'émission

Support des sémantiques "allow-list"

Et "deny-list" Règle

1

Extraire les groupes de l'utilisateur, chaque groupe est représenté par une revendication

Règle 2

Si une revendication groupe avec la valeur "foo" existe, émettre une revendication "permit"

Règle

1

Toujours émettre une revendication "permit"

Règle

2

Interroger un magasin d'attributs SQL et émettre une revendication "Extérieur" si la personne est un sous-traitant Rè

gle 3

Si la revendication "Extérieur" est présente, émettre une revendication "deny"

Page 51: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5353

Magasins d'attributs

Plusieurs magasins d'attributs sont pris en charge pour une seule instance de STS

En natifMagasin d'attributs SQL Server 2005/2008

Magasin d'attributs ADAM/AD LDS

La prise en charge pour les valeurs liées, comme Reports-To, est en cours d'examen

Des magasins d'attributs personnalisés peuvent être ajoutés

Des langages arbitraires de requête d'attributs sont pris en charge

Le moteur de langage transmet la chaîne de requête au magasin d'attributs pour interprétation

Page 52: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5454

Magasins d'attributs personnalisés

Permettre à un code personnalisé d'être enfiché pour la récupération des attributs

Suppose de définir un assembly .Net implémentant l'interface IAttributeStore

Cf. "Attribute Store Overview"http://msdn.microsoft.com/en-us/library/ee895358.aspx

Page 53: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5555

Sommaire

Un bref rappel sur AD FS 1.x, ses bénéfices et ses enseignementsDécouverte des protocoles et composants d'AD FS 2.0Illustration d'une mise en œuvre type et quelques

considérations associéesUtilisation des revendicationsEn guise de synthèse…

Page 54: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5656

AD FS 2.0 RC en synthèseQuelques fonctionnalités importantes

Support des standards OASIS WS-Federation et WS-TrustSupport (certifié par les tests d'interopérabilité Liberty Interoperable SAML 2.0) du standard OASIS SAML 2.0 pour les profils IDP Lite, SP Lite, et eGov 1.5Support des jetons SAML 1.1 et 2.0Expérience utilisateur simplifiée pour la configuration (de ferme(s)) de serveur(s) et/ou de proxy(s) de fédérationChoix de déploiement possible sans SQL Server Fournisseurs de magasins d'attributs AD DS, ADAM/AD LDS et SQL Server, et interface d'extensibilité pour d’autres référentielsConfiguration pilotée et gestion automatisée par les métadonnées harmonisées WS-FederationGestion et distribution automatique des certificats au sein d'une fermeAuthentification via WIA, mots de passe, certificats client, SAMLDélégation d'identité

Page 55: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5757

AD FS 2.0 RC en synthèse

Quelques fonctionnalités importantesMoteur de transformation de revendications fondé sur les règlesRègles d'autorisation fondées sur les revendications pour restreindre l'émission de jetons de sécuritéFonctions de diagnostic avancées (événements, audits et traces)Support de la fédération avec AD RMS 2008Support complet de Windows PowerShell pour une gestion d'AD FS 2.0 de bout en boutEmission de cartes d'information et support de Windows CardSpace 2.0 Beta 2 Refresh

Page 56: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5858

AD FS 2.0 RC en synthèseComposants connexes

Windows CardSpace 2.0 Beta 2 RefreshTéléchargement de taille réduite, expérience utilisateur rationalisée Cartes d'information poussées via les stratégies de groupeDécisions de sélection de carte poussées via les stratégies de groupe

Microsoft Federation Extensions for SharePoint 3.0 RCSupport pour SharePoint 2007 (fournisseurs d'authentification et d'appartenances)

Windows Identity Foundation (WIF) 1.0Modèle de programmation basé sur les revendications et intégré avec les rôles .NetSupport de la plateforme Windows AzureCf. session SEC317 "Windows Identity Foundation pour les développeurs"

Mercredi 8 février, de 16h00 à 17h00

Page 57: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

5959

En guise de conclusion

AD FS 2.0 résout les points de blocage en termes de déploiement d’AD FS 1.x

Via notamment le support du protocole SAML 2.0

AD FS 2.0 améliore la productivité de l'entreprise avec une gestion "Zero-Touch"

Gestion automatisée des relations de confiance à l’aide des métadonnéesGestion et distribution automatisées des certificats (signature et chiffrement) au sein d'une ferme

AD FS 2.0 permet des scénarios critiques et propose une interopérabilité native en environnements hétérogènes

Validée avec Sun OpenSSO Entreprise, Novell Access Manager, CA SiteMinder et Federation Manager, etc.

Cf. https://docs.federatedidentity.net

Page 58: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

6060

Evaluer AD FS 2.0 (RC) aujourd'hui

Télécharger AD FS 2.0 RC depuis le centre d'évaluation TechNethttp://technet.microsoft.com/fr-fr/evalcenter/ee476597(en-us).aspxAD FS 2.0 RC

http://www.microsoft.com/downloads/details.aspx?FamilyID=BE4DB6A0-B76D-446D-810C-EA3C25B3969A&displayLang=en

Windows CardSpace 2.0 RChttp://www.microsoft.com/downloads/details.aspx?

FamilyID=eb9c345f-e830-40b8-a5fe-ae7a864c4d76&displaylang=enMicrosoft Federation Extensions for SharePoint 3.0 Release Candidate

http://www.microsoft.com/downloads/details.aspx?FamilyID=8e7b6d99-991e-44fc-a74e-9adb152ddc37&displaylang=en

Page 59: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

6161

Evaluer AD FS 2.0 (RC) aujourd'hui

Tester les scénarios proposés sur Microsoft Connecthttps://connect.microsoft.com/site642/Downloads

Scénario + machines virtuelles Hyper-VScénario "Federated Document Collaboration Using Microsoft Office

SharePoint Server 2007 and AD FS 2"Scénario "Step by Step Guide to Identity Delegation"Scénario "Step-Up Authentication"

Page 60: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

6262

Evaluer AD FS 2.0 (RC) aujourd'hui

Suivre les sessions sur “The Id Element” de Channel 9http://channel9.msdn.com/identity/ADFS 2.0 RC is Here!SharePoint 2010 and Claims-Based IdentityWhat’s new in Geneva ServerMaking the shift from ADFS v1 to Geneva ServerThe new claims transformation languageGeneva Server and SAML 2.0 Interoperability

Page 61: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

6363

Pour aller plus loin…Documentation AD FS 2.0 sur Microsoft TechNet

http://technet.microsoft.com/en-us/library/dd727958(WS.10).aspxAD FS 2.0 RC Design Guide

http://go.microsoft.com/fwlink/?LinkID=148500AD FS 2.0 RC Deployment Guide

http://go.microsoft.com/fwlink/?LinkID=148501AD FS 2.0 RC Product Help

http://go.microsoft.com/fwlink/?LinkId=148504

Documentation AD FS 2.0 sur MSDNhttp://msdn.microsoft.com/en-us/library/ee914589.aspx

Documentation additionnelle sur Microsoft Connecthttps://connect.microsoft.com/site642/Downloads AD FS 2.0 RC Getting Started GuideStep by Step Guide for Single Sign-On to Microsoft OnlineDeveloping Custom Attribute Stores for AD FS 2.0Etc.

Page 62: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

6464

Pour aller plus loin…

Centre de développement MSDN Sécurité pour la gestion de l'identité

http://msdn.microsoft.com/security/aa570351.aspx

Forum “Geneva”http://social.msdn.microsoft.com/Forums/en-US/Geneva/threads/

Weblogs Blog "Geneva" Team

http://blogs.msdn.com/card/Blog Documentation AD FS

http://blogs.technet.com/adfs_documentationBlog Support Produit AD FS

http://blogs.technet.com/adfs

Page 63: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

6565

Questions / Réponses

Page 64: 11 Les nouveautés d'Active Directory Federation Service (AD FS) 2.0 (Release Candidate, nom de code "Geneva" Server) Code Session : SEC207 Philippe BERAUD

6666

© 2010 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.

Votre potentiel, notre passion TM