520 likes | 730 Views
Sécuriser une application avec le Framework Geneva et la plate-forme Azure. Rochdi CHAKROUN Lead Technique Winwise. Jérôme DUCLOS Architecte Winwise. Winwise. e-mail : contact@winwise.ch Site web : www.winwise.ch .
E N D
Sécuriser une application avec le Framework Geneva et la plate-forme Azure Rochdi CHAKROUN Lead Technique Winwise Jérôme DUCLOS Architecte Winwise
Winwise e-mail : contact@winwise.ch Site web : www.winwise.ch Société d’expertise spécialisée sur les nouvelles technologies Microsoft 90 consultants experts certifiés sur les dernières technologies Microsoft dont 7MVP et 1 RD 4 centres de compétences pour réaliser vos projets à forte valeur ajoutée : • Travail collaboratif • Business Intelligence & Data Management • Génie logiciel et Cycle de vie des applications • Interfaces Utilisateurs et « Smart Clients » 1er centre de formation en France sur les technologies .Net et la BI Pour tout renseignement rendez-vous sur notre stand partenaire
Sécuriser une application avec le Framework Geneva et la plate-forme Azure
Sommaire • L’identité, nouveau modèle • Etude de cas • Microsoft Services Connector • « Geneva » Server • « Geneva » Framework • « Geneva » CardSpace • Access Control Service • Feuille de route
Identité • Identité numérique : ensemble de revendications (claims) émis par un sujet, se rapportant soit à lui-même soit à un autre sujet. 1
IdentitéClaims • Claim (revendication) Etablit un fait se rapportant à une chose ou une personne. • Exemple : Majeur : Oui N° police d’assurance : 2571771
IdentitéJeton de sécurité matériel de clé [facultatif] Signature de l’émetteur S NomClaim1: Valeur1 … E NomClaimn: Valeurn Collection de Claims Chiffrement pour le public concerné
Software + Service Combiner applications existantes et services hébergéssur Internet 2
Software + Service Vos applications
Software + Service Amélioration de la productivité Liberté de choix • Basé sur les standards Live Identity Services Microsoft Federation Gateway .NET Access Control Service Services Modèle d’accès sur les claims “Geneva” Server Microsoft Services Connector Windows CardSpace “Geneva” “Geneva” Framework Live Framework Logiciels Active Directory
Le méta-système d’identités • Architecture ouverte et reposant sur des standards afin d’assurer l’échange des claims, sous contrôle de l’utilisateur. 3
Le méta-système d’identité Le médecinfournit le certificat Le réglementexige un certificatmédical Relation 1. Demande de claims 2. Obtention de claims 3. Envoi de claims Coureur
Le méta-système d’identité WS-Trust STS RP S
Le méta-système d’identité STS Security Token Service • Externalisation de l’authentification (ou pas) • IP-STS associé à un magasin d’identités • R-STS transforme simplement les claims (indirection, format) Fournit les claims
Le méta-système d’identité RP Relying Party • Une application, un fournisseur de ressources, un STS Consomme les claims
Le méta-système d’identités • « passif » = non SOAP Obtient contrôle et transmet les claims S Subject
Fédération Pour une application b2b ou utilisant des services hébergés il est essentiel de ne pas multiplier les comptes et de pouvoir proposer le SSO aux utilisateurs. 4
Fédération STS STS RP S
Scénarios Deux ministères fusionnent pour donner le ministère de la Santé et des Sports : les agents des directions régionales doivent partager des ressources une application qui recense les associations et équipements sportifs
Scénarios 1er défi : Partage de répertoires et de calendriers 2ème défi : Accéder à une application depuis l’extérieur, depuis un autre domaine 3ème défi Permettre aux clubs d’accéder à l’application 4ème défi Intégrer des partenaires et des services extérieurs
Microsoft Service Connector • Nom de domaine • Certificat SSL • URL publique
Microsoft Service Connector • Ajout des utilisateurs • 3 claims
Microsoft Service Connector • Gestion automatique des mises à jour • Installation possible en mode proxy ou ferme sur une forêt ou plus • Protocoles WS-*, SAML • Jetons SAML
"Geneva" Server démo Intégrer les claims
Geneva ServerFedutil • Ce qui change • Création et échange des méta-données pour établir la relation • Mode d’authentification (anonyme) • Redirection de l’utilisateur qui s’authentifieailleur et retourne des claims • Cequel’ongagne • Sans modification du code : la sécurité par rôlefonctionne • Souplesse : l’administrateur du définit le mode d’authentification et les rôles des utilisateurs
"Geneva" Server démo Extranet Web SSO
Geneva server • STS surl’AD Fournisseurd’identité et de fédération • Fournisseur de cartesgéréessurl’AD Sélecteursd’identitéCardSpace et InfoCard • Gestionnaire de confiance pour fédération Automatisation de la maintenance par échange de meta-données • Standards et interoperabilité Protocoles WS-* & SAML 2.0 “Web SSO profile” Jetons SAML 1.1 & 2.0
"Geneva" Server démo Fédération
Geneva ServerFederation • Ce qui change • Echange de métadonnées pour établir la relation • Transformation des claims pour adapter ce qui arrive en entrée aux claims attendus par l’application • L’utilisateurprécise son domaine • Cequel’ongagne • Installation facile, ilsuffit de connaîtrel’URL du STS du partenaire • Pas de réécriture de l’application : impédance par la transformation des claims • SSO pour les utilisateurs (par choix) • Fédération possible avec tout STS conforme aux standard WS-Federation et SAML 2.0
Geneva Server« Geneva» CardSpace Sélecteur d’identité Carte d’information ou i-card contient des métadonnées : types de jeton émis types de claim émis identifiant de l’émetteur type d’authentification exigé points de terminaison du STS
Geneva Framework démo STS sur mesure et génération de carte
Geneva FrameworkModèle de claims IClaimsPrincipal IClaimsIdentity IClaimsIdentity Sample Fill Sample Fill Claim ClaimType = “Name” Value = “Bob” Issuer = “WLID” Subject
Geneva Framework Home Realm Discovery Service Relying Party Client MMC: Policy UX MMC: Service UX Geneva FX API Card Space Geneva FX API {WS-Fed Passive } {WS-Fed Metadata} {WS-Fed Passive } {WS-Fed Metadata} {WS-Trust WS-MEX} {WMI} {Information Card Issuance} {Policy Management} Geneva Server Runtime Geneva FX API Protocol Hosting (WS-Trust, Metadata, WS-Federation) Information Card Issuance Service Policy Management Service WMI Provider Issuance Engine Identity Store Interface Policy Store Interface LDAP Store SQL Store {SQL} {FileIO} {LDAP} AD/ADAM User Attribute AuthN Store Config File SQL Policy Store
Access Control ServiceArchitecture • Quatre services : • STS délivrant les jetons, service de gestion des règles, moteur de règles, portail • API publique pour le STS et le service de gestion des règles STS Gestionrègles Portail ModèleDonnées Moteur de règles Stockage
Access Control ServiceSTS Security Token Service Security Token Service Custom Handlers, Authenticators, Policies … Custom Handlers, Authenticators, Policies … STS Custom Handlers, Authenticators, Policies … IDFX IDFX “Geneva” Framework WCF Front-End WS-Trust WS-Federation (Passive) Internet SOAP Client HTTP Client
Feuille de route S1 2009 S2 2009 Aujourd’hui Software • “Geneva”Server • Beta 2 • RTM • Beta 1 • Beta • Microsoft Service Connector • CTP • RTM • “Geneva” Fx, CardSpace • Beta 2 • RTM • Beta 1 • Live Framework • In Production Services • OpenID RTM • Live Identity Services • OpenID Beta • Microsoft Federation Gateway • In Production • .Net Access Control Service • Beta 1 • CTP
Références • “Geneva” sur Microsoft Connect http://go.microsoft.com/fwlink/?LinkId=122266 • Microsoft Services Connector www.microsoft.com/servicesconnector • Microsoft Federation Gateway Whitepaper • Access Control Service www.microsoft.com/azure/accesscontrol.mspx