SlideShare une entreprise Scribd logo
1  sur  44
Sécurisation des services WCF avec
            WS-Security
Windows Communication Foundation



• Framework pour créer des applications:
    •Orientées services
    •Interopérables
• Architecture modulaire et composable
• Support natif des protocoles des services Web
avancés WS-*
WCF : Mécanisme de communication

       Client                                                Service


                                             A       B   C

        Be      C     B     A                A       B   C       Be


                                             A       B   C

                                                 WSDL

                    Point de terminaison
                                                                « Behavior »
     Adresse              « Binding »      Contrat             Environnement
      Où ?                Comment ?        Quoi ?                d’exécution
WCF : Structure message

‘Client’                                            ‘Service’
                              Message
                          Message SOAP
                              Message

                                                   Metadata



                    Enveloppe Message SOAP

              Headers: Addressing, Security, etc


              Body: Payload
DEMO
Création d’un service WCF
Plan
• Sécurité dans WCF

• Sécurité mode message
   o WS-Security
   o Types d'informations d'identification client

• Sécurité mode transport

• Conclusion
Architecture WS-*

              Realible
Security                 Transactions
              Message




                                        Metadata
             Messaging


                  XML
Sécurité WCF


                   Sécurité
                      de
                   transfert
Audit




        Autorisation


                               Intégrité   Confidentialité Authentification




Sécurité WCF
Sécurité de transfert
 Intégrité :
Assurer la complétude et l’exactitude des données
     Signature des messages


 Confidentialité:
Assurer la lecture des messages que par le récepteur prévu
     Chiffrement des données à l'aide d'un schéma de clé publique/clé privée.



 Authentification:
Vérifier l’identité d’une entitté déclarée
     e.g: Utilisation des certificats, username/password.
Les trois fonctions de
                                               sécurité sont
                                              fournies par le
                                         transport utilisé pour
                                             transmettre des
                                           messages entre le
                                           client et le service.




Message                      Transport


          Les modes
          Les modes
          de sécurité



          Transport avec
            information
          d’identification
            de message
Sécurité mode message

   o WS-Security
   o Types d'informations d'identification client
WS-Security
• Publiée par Microsoft, IBM et Verisign

• Définit un modèle de sécurité de message qui permet d'appliquer la
  sécurité aux messages SOAP.

• Intégre les spécifications mises au point par le W3C autour du
  chiffrement et de la signature des documents XML - XML Encryption et
  XML Signature

• Utilise des jetons de sécurité combinés au chiffrement et aux
  signatures numériques

       Créer une interface universelle permettant à des systèmes de
sécurité basés sur des technologies hétérogènes de s'invoquer
mutuellement.
Architecture WS


       WS-
                     WS-Federation     WS-Authorizaion
SecureConcersation


    WS-Policy           WS-Trust         WS-Privacy


                       WS-Security


                     SOAP Foundation
Implémentation WS-Security dans WCF

• Sérialisation de jetons de sécurité vers et à partir de
  messages SOAP.                        SOAP Envelope
                                        Security Feeder

• Authentification de jetons de sécurité. Token
       SOAP Envelope                   Security

         SOAP Body
• Application et vérification de signatures de message.
                                         Signature


                                          SOAP Body
• Chiffrement et déchiffrement de messages SOAP.
Types d'informations d'identification
                 client

None         Windows         Username         Certificate Issued Token (jeton émis)
             •Permet les échanges dele service à exiger service à
• Le client n'a pas besoin de•Autorise        •Autorise le •Type de jeton personnalisé
              d'informationsque le client soit authentifié client soit fonction d'une
  présenter messages SOAP dans le              exiger que configuré en
                                                            le
  d'identification(un client avec des informations
              contexte de sécurité établi      authentifiéstratégied'un
                                                             à l'aide de sécurité. Le type
  anonyme).                   d'identification certificat X.509
              avec des informations            de nom de jeton par défaut est le
              d'identificationd'utilisateur.
                               Windows.                     jeton SAML (Security
• WSS SOAP Message Security                   •WSS SOAPAssertions Markup Language).
                                                             Message
                                                            Le jeton est émis par un
  X.509 Certificate Token •WSS SOAP Message
             •WSS SOAP Message Security Security X.509 Certificate sécurisé.
                              Security UsernameToken service de jetons
  Profile 1.1Kerberos Token Profile 1.1        Token Profile 1.1
                              Profile 1.1 Ou WSS SOAP
                              Message Security X.509 •WSS SAML Token Profile 1.1
                              Certificate Token Profile 1.1
Scénario d’authentification Windows
Notion de ticket Kerberos

• Une structure de données constituée d’une partie
  chiffrée et d’une partie claire.
                                            Chiffrement
                     Chiffrement
• Sert à authentifier les requêtes des participants du
       Clef de
  système.
       session



   Clef du serveur
    de ressource
                                   Ticket                 Transmis
                                                          au client
          Clef du
           client
Scénario d’authentification Windows
                                Centre de
                                distribution de
                                            Déchiffrement
                                clés (KDC)
            Authentifiant                                         Authentifiant
                                                                          6       Valider le token
              Reçu par      1   Demander un ticket de service             7    Décrypter le
             Le serveur
            De ressource    2   Récupérer le ticket de service                 message
3   Signer le                    Déchiffrement                             8   Vérifier la signature
    message
4    Crypter le
                                                            OUI                         NON
     message                                                       Valide ?


                                                  5   Envoi Requête Message
                                                   Accès                                      Refus
         Clef du serveur
          de ressource
                                                  9    Envoi Message Réponse
                  Client                                                                      Service
DEMO
Scénario d’authentification Windows
Scénario d’authentification None
Notion de Certificat X.509

• Un standard de            cryptographie de l'Union
  internationale des télécommunications pour les
  infrastructures à clés publiques (PKI).

• Créé en 1988 dans le cadre du standard X.500.

• Repose sur un système hiérarchique d'autorités de
  certification.
Scénario d’authentification None



            1   Envoi Requête Message



            2   Envoi Réponse Message

                                        Service
Client
DEMO
Scénario d’authentification None
Scénario d’authentification Username
Scénario d’authentification Username

                                           2   Validation
                                          Username/Password

              1    Envoi Requête Message


              3   Envoi Réponse Message
                                                  Service

Client
DEMO
Scénario d’authentification Username
Scénario d’authentification Certificate
Scénario d’authentification Certificate
                               Côté Client
              Certificate                           4   Attacher le Certificat
              Store                                     Client au message
                                                    5   Signer le Message
 S
 C        1    Récupérer le Certificat du Service       avec sa clé privée
                                                    6   Crypter le Message
          2    Récupérer le Certificat du Client        avec la clé publique du
          3    Récupérer la Clé Privée                  service




                              7   Envoi Requête Message




 Client                                                          Service
Scénario d’authentification Certificate
                         Côté Service
                                                Certificate
                                                Store


                                                 S
  Récupérer le Certificat du Service   1
           Récupérer la Clé Privée     2

                                                      4    Décrypter le
                                                           message

                                                       5      Vérifier la
                7   Envoi Message Réponse
                                                              signature




 Client                                     Service
DEMO
Création d’un service WCF
Scénario d’authentification Issued Token



        Issued Token
Notion de jeton SAML

• Security Assertions Markup Language.

• Des représentations XML de revendications.

• Par défaut, les jetons SAML qu'utilise WCF dans les
  scénarios de sécurité fédérée sont des jetons émis
  (issued token).
Scénario d’authentification Issued Token
Service de                       2   Signer le jeton SAML
jetons                               avec le certificat



                       1   Demander un jeton SAML              7   Vérifier la signature
                                                                   du jeton SAML
                       3   Récupérer le jeton SAML
                                                               8
5   Signer le                                                      Vérifier la signature
    Message            4   Récupérer la Clé de revendication       du message.
    avec la clé.
               C


                                          6   Envoi Requête Message

                                          9   Envoi Message Réponse

              Client                                                       Service
Sécurité mode transport

   o Présentation
   o Transport Vs Message
Sécurité mode transport


• S’applique au message dans son ensemble

• Assure la confidentialité, intégrité et/ou
  l’authentification

• Dépend du mécanisme utilisé par la liaison
  sélectionnée: HTTPS, SSL
Scénario d’authentification None




             1   Envoi Requête Message


             2   Envoi Réponse Message
DEMO
Scénario d’authentification None
Message vs Transport
Sécurité Mode Message                     Sécurité Mode Transport
Sécurité de bout en bout                   Saut à saut uniquement

Prise en charge de plusieurs transports     Dépendance vis-à-vis du transport

Prise en charge d'un large jeu              Jeu d'informations d'identification
d'informations d'identification             limité et non extensible
Performance                                 Performance globale ameliorée
Impossible d'utiliser la diffusion en
continu de messages                         La diffusion en continu est possible

Requiert l'implémentation de                Sécurité indépendante du niveau
mécanismes de sécurité au niveau du         du XML.
XML et la prise en charge de la
spécification WS-Security.
Sécurité Message




                   Sécurité Transport
Récapitulons

       Binding




    Security Mode




    Credential Type




    Custom Binding
Conclusion
• L'application directe de la sécurité au message en
  modifiant son contenu permet au message sécurisé
  d'être autonome en ce qui concerne les aspects de la
  sécurité.

• Le choix de mode dépend de besoins de
  l’architecture: Message ou Transport ou les deux,
  chacun a des inconvénient et des avantages.
Merci pour votre attention
Sécurisation des services WCF avec WS-Security

Contenu connexe

Tendances

Les menaces applicatives
Les menaces applicativesLes menaces applicatives
Les menaces applicativesBee_Ware
 
Chp5 - Sécurité des Services
Chp5 - Sécurité des ServicesChp5 - Sécurité des Services
Chp5 - Sécurité des ServicesLilia Sfaxi
 
Sécurité des Systèmes Répartis- Partie2 - non interférence
Sécurité des Systèmes Répartis- Partie2 - non interférenceSécurité des Systèmes Répartis- Partie2 - non interférence
Sécurité des Systèmes Répartis- Partie2 - non interférenceLilia Sfaxi
 
White paper - La sécurisation des web services
White paper - La sécurisation des web servicesWhite paper - La sécurisation des web services
White paper - La sécurisation des web servicesBee_Ware
 
Webinaire : sécurité informatique sur le web - Jérôme Thémée
Webinaire : sécurité informatique sur le web - Jérôme ThéméeWebinaire : sécurité informatique sur le web - Jérôme Thémée
Webinaire : sécurité informatique sur le web - Jérôme ThéméeMarie Tapia
 
Introduction vulnérabilité web
Introduction vulnérabilité webIntroduction vulnérabilité web
Introduction vulnérabilité webdavystoffel
 
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan MarcilASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan MarcilCyber Security Alliance
 
Les principales failles de sécurité des applications web actuelles
Les principales failles de sécurité des applications web actuellesLes principales failles de sécurité des applications web actuelles
Les principales failles de sécurité des applications web actuellesBee_Ware
 
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...Cyber Security Alliance
 
Owasp top 10 2010 Resist toulouse
Owasp top 10   2010  Resist toulouseOwasp top 10   2010  Resist toulouse
Owasp top 10 2010 Resist toulouseSébastien GIORIA
 
Vulnérabilité des sites web
Vulnérabilité des sites webVulnérabilité des sites web
Vulnérabilité des sites webSaid Sadik
 
Sécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseSécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseAntonio Fontes
 
Waf, le bon outil, la bonne administration
Waf, le bon outil, la bonne administration Waf, le bon outil, la bonne administration
Waf, le bon outil, la bonne administration Bee_Ware
 
Conférence #nwxtech2 : Sécurité web/PHP par Maxime Mauchaussée
Conférence #nwxtech2 : Sécurité web/PHP par Maxime MauchausséeConférence #nwxtech2 : Sécurité web/PHP par Maxime Mauchaussée
Conférence #nwxtech2 : Sécurité web/PHP par Maxime MauchausséeNormandie Web Xperts
 
Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1 Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1 Lilia Sfaxi
 
Windows Azure Multi-Factor Authentication, presentation et cas d'usage
Windows Azure Multi-Factor Authentication, presentation et cas d'usageWindows Azure Multi-Factor Authentication, presentation et cas d'usage
Windows Azure Multi-Factor Authentication, presentation et cas d'usagePhilippe Beraud
 

Tendances (20)

Les menaces applicatives
Les menaces applicativesLes menaces applicatives
Les menaces applicatives
 
Chp5 - Sécurité des Services
Chp5 - Sécurité des ServicesChp5 - Sécurité des Services
Chp5 - Sécurité des Services
 
Sécurité des Systèmes Répartis- Partie2 - non interférence
Sécurité des Systèmes Répartis- Partie2 - non interférenceSécurité des Systèmes Répartis- Partie2 - non interférence
Sécurité des Systèmes Répartis- Partie2 - non interférence
 
Sécuriser un cms
Sécuriser un cms Sécuriser un cms
Sécuriser un cms
 
White paper - La sécurisation des web services
White paper - La sécurisation des web servicesWhite paper - La sécurisation des web services
White paper - La sécurisation des web services
 
Cours Secu Web
Cours Secu WebCours Secu Web
Cours Secu Web
 
Webinaire : sécurité informatique sur le web - Jérôme Thémée
Webinaire : sécurité informatique sur le web - Jérôme ThéméeWebinaire : sécurité informatique sur le web - Jérôme Thémée
Webinaire : sécurité informatique sur le web - Jérôme Thémée
 
Introduction vulnérabilité web
Introduction vulnérabilité webIntroduction vulnérabilité web
Introduction vulnérabilité web
 
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan MarcilASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
 
Les principales failles de sécurité des applications web actuelles
Les principales failles de sécurité des applications web actuellesLes principales failles de sécurité des applications web actuelles
Les principales failles de sécurité des applications web actuelles
 
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
ASFWS 2013 - Quels sont les défis de la fédération d’identité dans le Cloud ?...
 
Owasp top 10 2010 Resist toulouse
Owasp top 10   2010  Resist toulouseOwasp top 10   2010  Resist toulouse
Owasp top 10 2010 Resist toulouse
 
OpenSSO Aquarium Paris
OpenSSO Aquarium ParisOpenSSO Aquarium Paris
OpenSSO Aquarium Paris
 
Securité web
Securité webSecurité web
Securité web
 
Vulnérabilité des sites web
Vulnérabilité des sites webVulnérabilité des sites web
Vulnérabilité des sites web
 
Sécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseSécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défense
 
Waf, le bon outil, la bonne administration
Waf, le bon outil, la bonne administration Waf, le bon outil, la bonne administration
Waf, le bon outil, la bonne administration
 
Conférence #nwxtech2 : Sécurité web/PHP par Maxime Mauchaussée
Conférence #nwxtech2 : Sécurité web/PHP par Maxime MauchausséeConférence #nwxtech2 : Sécurité web/PHP par Maxime Mauchaussée
Conférence #nwxtech2 : Sécurité web/PHP par Maxime Mauchaussée
 
Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1 Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1
 
Windows Azure Multi-Factor Authentication, presentation et cas d'usage
Windows Azure Multi-Factor Authentication, presentation et cas d'usageWindows Azure Multi-Factor Authentication, presentation et cas d'usage
Windows Azure Multi-Factor Authentication, presentation et cas d'usage
 

En vedette

Act 00018 architecture ouverte pour une gestion optimale de l’information géo...
Act 00018 architecture ouverte pour une gestion optimale de l’information géo...Act 00018 architecture ouverte pour une gestion optimale de l’information géo...
Act 00018 architecture ouverte pour une gestion optimale de l’information géo...ACSG Section Montréal
 
ASFWS 2012 WS Security - REST vs SOAP par Sylvain Maret
ASFWS 2012 WS Security - REST vs SOAP par Sylvain MaretASFWS 2012 WS Security - REST vs SOAP par Sylvain Maret
ASFWS 2012 WS Security - REST vs SOAP par Sylvain MaretCyber Security Alliance
 
Service Web de géolocalisation du Ministère de la Sécurité publique du Québec
Service Web de géolocalisation du Ministère de la Sécurité publique du QuébecService Web de géolocalisation du Ministère de la Sécurité publique du Québec
Service Web de géolocalisation du Ministère de la Sécurité publique du QuébecACSG Section Montréal
 
Gerencia de proyectos t. e. ancizar
Gerencia de proyectos t. e. ancizarGerencia de proyectos t. e. ancizar
Gerencia de proyectos t. e. ancizarAncizar Marin Correa
 
Infographie: Que veulent les clients, et comment les satisfaire?
Infographie: Que veulent les clients, et comment les satisfaire?Infographie: Que veulent les clients, et comment les satisfaire?
Infographie: Que veulent les clients, et comment les satisfaire?Sociomantic Labs France
 
Un Trio Infernal a41 ch 1 à 7 Pierre st Vincent
Un Trio Infernal a41 ch 1 à 7 Pierre st VincentUn Trio Infernal a41 ch 1 à 7 Pierre st Vincent
Un Trio Infernal a41 ch 1 à 7 Pierre st VincentPierre ST Vincent
 
Article e-commerce magazine 3-3-2014
Article e-commerce magazine 3-3-2014Article e-commerce magazine 3-3-2014
Article e-commerce magazine 3-3-2014Logicités
 
Capa de transporte y red del modelo OSI
Capa de transporte y red del modelo OSI Capa de transporte y red del modelo OSI
Capa de transporte y red del modelo OSI Lis Arenas
 
La journée du praticien. extraits de l’intervention d’edouard couty, rappor...
La journée du praticien.   extraits de l’intervention d’edouard couty, rappor...La journée du praticien.   extraits de l’intervention d’edouard couty, rappor...
La journée du praticien. extraits de l’intervention d’edouard couty, rappor...Réseau Pro Santé
 
Histoire du nazisme
Histoire du nazismeHistoire du nazisme
Histoire du nazismechourasse
 
Agradecimientos
AgradecimientosAgradecimientos
AgradecimientosDavid_Guti
 
Fiche enseignant
Fiche enseignantFiche enseignant
Fiche enseignantAminatice
 
Calidad y evaluación de contenidos electrónicos
Calidad y evaluación de contenidos electrónicosCalidad y evaluación de contenidos electrónicos
Calidad y evaluación de contenidos electrónicosRobertocesun
 

En vedette (20)

Act 00018 architecture ouverte pour une gestion optimale de l’information géo...
Act 00018 architecture ouverte pour une gestion optimale de l’information géo...Act 00018 architecture ouverte pour une gestion optimale de l’information géo...
Act 00018 architecture ouverte pour une gestion optimale de l’information géo...
 
ASFWS 2012 WS Security - REST vs SOAP par Sylvain Maret
ASFWS 2012 WS Security - REST vs SOAP par Sylvain MaretASFWS 2012 WS Security - REST vs SOAP par Sylvain Maret
ASFWS 2012 WS Security - REST vs SOAP par Sylvain Maret
 
Service Web de géolocalisation du Ministère de la Sécurité publique du Québec
Service Web de géolocalisation du Ministère de la Sécurité publique du QuébecService Web de géolocalisation du Ministère de la Sécurité publique du Québec
Service Web de géolocalisation du Ministère de la Sécurité publique du Québec
 
Elvalordelapuntualidad (1)
Elvalordelapuntualidad (1)Elvalordelapuntualidad (1)
Elvalordelapuntualidad (1)
 
Projet tice
Projet ticeProjet tice
Projet tice
 
Las tics
Las ticsLas tics
Las tics
 
Gerencia de proyectos t. e. ancizar
Gerencia de proyectos t. e. ancizarGerencia de proyectos t. e. ancizar
Gerencia de proyectos t. e. ancizar
 
Infographie: Que veulent les clients, et comment les satisfaire?
Infographie: Que veulent les clients, et comment les satisfaire?Infographie: Que veulent les clients, et comment les satisfaire?
Infographie: Que veulent les clients, et comment les satisfaire?
 
Un Trio Infernal a41 ch 1 à 7 Pierre st Vincent
Un Trio Infernal a41 ch 1 à 7 Pierre st VincentUn Trio Infernal a41 ch 1 à 7 Pierre st Vincent
Un Trio Infernal a41 ch 1 à 7 Pierre st Vincent
 
Article e-commerce magazine 3-3-2014
Article e-commerce magazine 3-3-2014Article e-commerce magazine 3-3-2014
Article e-commerce magazine 3-3-2014
 
Soraya Moreno
Soraya MorenoSoraya Moreno
Soraya Moreno
 
Capa de transporte y red del modelo OSI
Capa de transporte y red del modelo OSI Capa de transporte y red del modelo OSI
Capa de transporte y red del modelo OSI
 
La journée du praticien. extraits de l’intervention d’edouard couty, rappor...
La journée du praticien.   extraits de l’intervention d’edouard couty, rappor...La journée du praticien.   extraits de l’intervention d’edouard couty, rappor...
La journée du praticien. extraits de l’intervention d’edouard couty, rappor...
 
Producto 1 wikis
Producto 1 wikisProducto 1 wikis
Producto 1 wikis
 
TEORÍA EMPRESARIAL
TEORÍA EMPRESARIALTEORÍA EMPRESARIAL
TEORÍA EMPRESARIAL
 
Histoire du nazisme
Histoire du nazismeHistoire du nazisme
Histoire du nazisme
 
French
FrenchFrench
French
 
Agradecimientos
AgradecimientosAgradecimientos
Agradecimientos
 
Fiche enseignant
Fiche enseignantFiche enseignant
Fiche enseignant
 
Calidad y evaluación de contenidos electrónicos
Calidad y evaluación de contenidos electrónicosCalidad y evaluación de contenidos electrónicos
Calidad y evaluación de contenidos electrónicos
 

Similaire à Sécurisation des services WCF avec WS-Security

Webinar SSL Français
Webinar SSL FrançaisWebinar SSL Français
Webinar SSL FrançaisSSL247®
 
Présentation de Microsoft Office 365 et des briques de sécurité Fédération, P...
Présentation de Microsoft Office 365 et des briques de sécurité Fédération, P...Présentation de Microsoft Office 365 et des briques de sécurité Fédération, P...
Présentation de Microsoft Office 365 et des briques de sécurité Fédération, P...Microsoft Technet France
 
Vous avez dit protocoles Web d’authentification et d’autorisation ! De quoi p...
Vous avez dit protocoles Web d’authentification et d’autorisation ! De quoi p...Vous avez dit protocoles Web d’authentification et d’autorisation ! De quoi p...
Vous avez dit protocoles Web d’authentification et d’autorisation ! De quoi p...Microsoft
 
Vous avez dit protocoles Web d'authentification et d'autorisation ! De quoi p...
Vous avez dit protocoles Web d'authentification et d'autorisation ! De quoi p...Vous avez dit protocoles Web d'authentification et d'autorisation ! De quoi p...
Vous avez dit protocoles Web d'authentification et d'autorisation ! De quoi p...Philippe Beraud
 
Cours HTTPS pour UnPointZero
Cours HTTPS pour UnPointZeroCours HTTPS pour UnPointZero
Cours HTTPS pour UnPointZeroCHILDZ Laurent
 
Decouvrez le SSL
Decouvrez le SSLDecouvrez le SSL
Decouvrez le SSLKeynectis
 
5-Authentification.2P.pdf
5-Authentification.2P.pdf5-Authentification.2P.pdf
5-Authentification.2P.pdfBellaj Badr
 
Strong Authentication with PKI
Strong Authentication with PKIStrong Authentication with PKI
Strong Authentication with PKISylvain Maret
 
LinSign : la signature électronique en Open Source
LinSign : la signature électronique en Open Source LinSign : la signature électronique en Open Source
LinSign : la signature électronique en Open Source LINAGORA
 
Presentation x.509
Presentation x.509Presentation x.509
Presentation x.509Ossama Jimil
 
Authentification Forte Cours UNI 2002
Authentification Forte Cours UNI 2002Authentification Forte Cours UNI 2002
Authentification Forte Cours UNI 2002Sylvain Maret
 
TechDays 2010 (CLO305) : Windows Azure App Fabric
TechDays 2010 (CLO305) : Windows Azure App FabricTechDays 2010 (CLO305) : Windows Azure App Fabric
TechDays 2010 (CLO305) : Windows Azure App FabricGeoffrey DANIEL
 
Etat des Lieux DANE (DNS Based Authentication of Named Entities)
Etat des Lieux DANE (DNS Based Authentication of Named Entities)Etat des Lieux DANE (DNS Based Authentication of Named Entities)
Etat des Lieux DANE (DNS Based Authentication of Named Entities)Afnic
 
Utilisation de services Web sécurisés en Java en environnement Open Source
Utilisation de services Web sécurisés en Java en environnement Open SourceUtilisation de services Web sécurisés en Java en environnement Open Source
Utilisation de services Web sécurisés en Java en environnement Open Sourceguest3be047
 
Séminaire Evolution des technologies d’authentification
Séminaire Evolution des technologies d’authentificationSéminaire Evolution des technologies d’authentification
Séminaire Evolution des technologies d’authentificatione-Xpert Solutions SA
 

Similaire à Sécurisation des services WCF avec WS-Security (20)

Webinar SSL Français
Webinar SSL FrançaisWebinar SSL Français
Webinar SSL Français
 
Présentation de Microsoft Office 365 et des briques de sécurité Fédération, P...
Présentation de Microsoft Office 365 et des briques de sécurité Fédération, P...Présentation de Microsoft Office 365 et des briques de sécurité Fédération, P...
Présentation de Microsoft Office 365 et des briques de sécurité Fédération, P...
 
Vous avez dit protocoles Web d’authentification et d’autorisation ! De quoi p...
Vous avez dit protocoles Web d’authentification et d’autorisation ! De quoi p...Vous avez dit protocoles Web d’authentification et d’autorisation ! De quoi p...
Vous avez dit protocoles Web d’authentification et d’autorisation ! De quoi p...
 
Cours si1
Cours si1Cours si1
Cours si1
 
Vous avez dit protocoles Web d'authentification et d'autorisation ! De quoi p...
Vous avez dit protocoles Web d'authentification et d'autorisation ! De quoi p...Vous avez dit protocoles Web d'authentification et d'autorisation ! De quoi p...
Vous avez dit protocoles Web d'authentification et d'autorisation ! De quoi p...
 
Cours HTTPS pour UnPointZero
Cours HTTPS pour UnPointZeroCours HTTPS pour UnPointZero
Cours HTTPS pour UnPointZero
 
Presentation new1
Presentation new1Presentation new1
Presentation new1
 
Decouvrez le SSL
Decouvrez le SSLDecouvrez le SSL
Decouvrez le SSL
 
5-Authentification.2P.pdf
5-Authentification.2P.pdf5-Authentification.2P.pdf
5-Authentification.2P.pdf
 
Strong Authentication with PKI
Strong Authentication with PKIStrong Authentication with PKI
Strong Authentication with PKI
 
Sécurité-Wifi
Sécurité-WifiSécurité-Wifi
Sécurité-Wifi
 
LinSign : la signature électronique en Open Source
LinSign : la signature électronique en Open Source LinSign : la signature électronique en Open Source
LinSign : la signature électronique en Open Source
 
Presentation x.509
Presentation x.509Presentation x.509
Presentation x.509
 
Best practise Infrastructure pki
Best practise Infrastructure pkiBest practise Infrastructure pki
Best practise Infrastructure pki
 
Authentification Forte Cours UNI 2002
Authentification Forte Cours UNI 2002Authentification Forte Cours UNI 2002
Authentification Forte Cours UNI 2002
 
TechDays 2010 (CLO305) : Windows Azure App Fabric
TechDays 2010 (CLO305) : Windows Azure App FabricTechDays 2010 (CLO305) : Windows Azure App Fabric
TechDays 2010 (CLO305) : Windows Azure App Fabric
 
PKI par la Pratique
PKI par la PratiquePKI par la Pratique
PKI par la Pratique
 
Etat des Lieux DANE (DNS Based Authentication of Named Entities)
Etat des Lieux DANE (DNS Based Authentication of Named Entities)Etat des Lieux DANE (DNS Based Authentication of Named Entities)
Etat des Lieux DANE (DNS Based Authentication of Named Entities)
 
Utilisation de services Web sécurisés en Java en environnement Open Source
Utilisation de services Web sécurisés en Java en environnement Open SourceUtilisation de services Web sécurisés en Java en environnement Open Source
Utilisation de services Web sécurisés en Java en environnement Open Source
 
Séminaire Evolution des technologies d’authentification
Séminaire Evolution des technologies d’authentificationSéminaire Evolution des technologies d’authentification
Séminaire Evolution des technologies d’authentification
 

Plus de Slimen Belhaj Ali (19)

Solution générique pour la résolution des problèmes statiques de tournées de ...
Solution générique pour la résolution des problèmes statiques de tournées de ...Solution générique pour la résolution des problèmes statiques de tournées de ...
Solution générique pour la résolution des problèmes statiques de tournées de ...
 
BPMN,jBPM,BPEL
BPMN,jBPM,BPELBPMN,jBPM,BPEL
BPMN,jBPM,BPEL
 
Websphere
WebsphereWebsphere
Websphere
 
JasperReport
JasperReportJasperReport
JasperReport
 
ERP Universitaire
ERP UniversitaireERP Universitaire
ERP Universitaire
 
JSF 2.0
JSF 2.0JSF 2.0
JSF 2.0
 
Tutorial
TutorialTutorial
Tutorial
 
Spring security
Spring securitySpring security
Spring security
 
Spring mvc 3.0 web flow
Spring mvc 3.0 web flowSpring mvc 3.0 web flow
Spring mvc 3.0 web flow
 
Share point 2010
Share point 2010Share point 2010
Share point 2010
 
TFS
TFSTFS
TFS
 
objective C
objective Cobjective C
objective C
 
Android
AndroidAndroid
Android
 
Hibernate 3
Hibernate 3Hibernate 3
Hibernate 3
 
WPF MVVM
WPF MVVMWPF MVVM
WPF MVVM
 
Jboss Seam
Jboss SeamJboss Seam
Jboss Seam
 
Google appengine&guice
Google appengine&guiceGoogle appengine&guice
Google appengine&guice
 
Sonar-Hodson-Maven
Sonar-Hodson-MavenSonar-Hodson-Maven
Sonar-Hodson-Maven
 
Administration glassfish 3
Administration glassfish 3Administration glassfish 3
Administration glassfish 3
 

Sécurisation des services WCF avec WS-Security

  • 1. Sécurisation des services WCF avec WS-Security
  • 2. Windows Communication Foundation • Framework pour créer des applications: •Orientées services •Interopérables • Architecture modulaire et composable • Support natif des protocoles des services Web avancés WS-*
  • 3. WCF : Mécanisme de communication Client Service A B C Be C B A A B C Be A B C WSDL Point de terminaison « Behavior » Adresse « Binding » Contrat Environnement Où ? Comment ? Quoi ? d’exécution
  • 4. WCF : Structure message ‘Client’ ‘Service’ Message Message SOAP Message Metadata Enveloppe Message SOAP Headers: Addressing, Security, etc Body: Payload
  • 6.
  • 7. Plan • Sécurité dans WCF • Sécurité mode message o WS-Security o Types d'informations d'identification client • Sécurité mode transport • Conclusion
  • 8. Architecture WS-* Realible Security Transactions Message Metadata Messaging XML
  • 9. Sécurité WCF Sécurité de transfert Audit Autorisation Intégrité Confidentialité Authentification Sécurité WCF
  • 10. Sécurité de transfert  Intégrité : Assurer la complétude et l’exactitude des données Signature des messages  Confidentialité: Assurer la lecture des messages que par le récepteur prévu Chiffrement des données à l'aide d'un schéma de clé publique/clé privée.  Authentification: Vérifier l’identité d’une entitté déclarée e.g: Utilisation des certificats, username/password.
  • 11. Les trois fonctions de sécurité sont fournies par le transport utilisé pour transmettre des messages entre le client et le service. Message Transport Les modes Les modes de sécurité Transport avec information d’identification de message
  • 12. Sécurité mode message o WS-Security o Types d'informations d'identification client
  • 13. WS-Security • Publiée par Microsoft, IBM et Verisign • Définit un modèle de sécurité de message qui permet d'appliquer la sécurité aux messages SOAP. • Intégre les spécifications mises au point par le W3C autour du chiffrement et de la signature des documents XML - XML Encryption et XML Signature • Utilise des jetons de sécurité combinés au chiffrement et aux signatures numériques Créer une interface universelle permettant à des systèmes de sécurité basés sur des technologies hétérogènes de s'invoquer mutuellement.
  • 14. Architecture WS WS- WS-Federation WS-Authorizaion SecureConcersation WS-Policy WS-Trust WS-Privacy WS-Security SOAP Foundation
  • 15. Implémentation WS-Security dans WCF • Sérialisation de jetons de sécurité vers et à partir de messages SOAP. SOAP Envelope Security Feeder • Authentification de jetons de sécurité. Token SOAP Envelope Security SOAP Body • Application et vérification de signatures de message. Signature SOAP Body • Chiffrement et déchiffrement de messages SOAP.
  • 16. Types d'informations d'identification client None Windows Username Certificate Issued Token (jeton émis) •Permet les échanges dele service à exiger service à • Le client n'a pas besoin de•Autorise •Autorise le •Type de jeton personnalisé d'informationsque le client soit authentifié client soit fonction d'une présenter messages SOAP dans le exiger que configuré en le d'identification(un client avec des informations contexte de sécurité établi authentifiéstratégied'un à l'aide de sécurité. Le type anonyme). d'identification certificat X.509 avec des informations de nom de jeton par défaut est le d'identificationd'utilisateur. Windows. jeton SAML (Security • WSS SOAP Message Security •WSS SOAPAssertions Markup Language). Message Le jeton est émis par un X.509 Certificate Token •WSS SOAP Message •WSS SOAP Message Security Security X.509 Certificate sécurisé. Security UsernameToken service de jetons Profile 1.1Kerberos Token Profile 1.1 Token Profile 1.1 Profile 1.1 Ou WSS SOAP Message Security X.509 •WSS SAML Token Profile 1.1 Certificate Token Profile 1.1
  • 18. Notion de ticket Kerberos • Une structure de données constituée d’une partie chiffrée et d’une partie claire. Chiffrement Chiffrement • Sert à authentifier les requêtes des participants du Clef de système. session Clef du serveur de ressource Ticket Transmis au client Clef du client
  • 19. Scénario d’authentification Windows Centre de distribution de Déchiffrement clés (KDC) Authentifiant Authentifiant 6 Valider le token Reçu par 1 Demander un ticket de service 7 Décrypter le Le serveur De ressource 2 Récupérer le ticket de service message 3 Signer le Déchiffrement 8 Vérifier la signature message 4 Crypter le OUI NON message Valide ? 5 Envoi Requête Message Accès Refus Clef du serveur de ressource 9 Envoi Message Réponse Client Service
  • 22. Notion de Certificat X.509 • Un standard de cryptographie de l'Union internationale des télécommunications pour les infrastructures à clés publiques (PKI). • Créé en 1988 dans le cadre du standard X.500. • Repose sur un système hiérarchique d'autorités de certification.
  • 23. Scénario d’authentification None 1 Envoi Requête Message 2 Envoi Réponse Message Service Client
  • 26. Scénario d’authentification Username 2 Validation Username/Password 1 Envoi Requête Message 3 Envoi Réponse Message Service Client
  • 29. Scénario d’authentification Certificate Côté Client Certificate 4 Attacher le Certificat Store Client au message 5 Signer le Message S C 1 Récupérer le Certificat du Service avec sa clé privée 6 Crypter le Message 2 Récupérer le Certificat du Client avec la clé publique du 3 Récupérer la Clé Privée service 7 Envoi Requête Message Client Service
  • 30. Scénario d’authentification Certificate Côté Service Certificate Store S Récupérer le Certificat du Service 1 Récupérer la Clé Privée 2 4 Décrypter le message 5 Vérifier la 7 Envoi Message Réponse signature Client Service
  • 33. Notion de jeton SAML • Security Assertions Markup Language. • Des représentations XML de revendications. • Par défaut, les jetons SAML qu'utilise WCF dans les scénarios de sécurité fédérée sont des jetons émis (issued token).
  • 34. Scénario d’authentification Issued Token Service de 2 Signer le jeton SAML jetons avec le certificat 1 Demander un jeton SAML 7 Vérifier la signature du jeton SAML 3 Récupérer le jeton SAML 8 5 Signer le Vérifier la signature Message 4 Récupérer la Clé de revendication du message. avec la clé. C 6 Envoi Requête Message 9 Envoi Message Réponse Client Service
  • 35. Sécurité mode transport o Présentation o Transport Vs Message
  • 36. Sécurité mode transport • S’applique au message dans son ensemble • Assure la confidentialité, intégrité et/ou l’authentification • Dépend du mécanisme utilisé par la liaison sélectionnée: HTTPS, SSL
  • 37. Scénario d’authentification None 1 Envoi Requête Message 2 Envoi Réponse Message
  • 39. Message vs Transport Sécurité Mode Message Sécurité Mode Transport Sécurité de bout en bout Saut à saut uniquement Prise en charge de plusieurs transports Dépendance vis-à-vis du transport Prise en charge d'un large jeu Jeu d'informations d'identification d'informations d'identification limité et non extensible Performance Performance globale ameliorée Impossible d'utiliser la diffusion en continu de messages La diffusion en continu est possible Requiert l'implémentation de Sécurité indépendante du niveau mécanismes de sécurité au niveau du du XML. XML et la prise en charge de la spécification WS-Security.
  • 40. Sécurité Message Sécurité Transport
  • 41. Récapitulons Binding Security Mode Credential Type Custom Binding
  • 42. Conclusion • L'application directe de la sécurité au message en modifiant son contenu permet au message sécurisé d'être autonome en ce qui concerne les aspects de la sécurité. • Le choix de mode dépend de besoins de l’architecture: Message ou Transport ou les deux, chacun a des inconvénient et des avantages.
  • 43. Merci pour votre attention