« Comparatif JSF/Struts | Page d'accueil | La Sécurité SOA »

23/05/2005

Comment sécuriser les services web? PAR I

L’émergence des services web pose plusieurs problématiques dont celle de la sécurité des échanges de messages entre partenaires. Dans une architecture Orientée Services, les services web peuvent exposer des processus métier sensibles qui nécessitent un traitement particulier en terme de sécurité aux deux bouts du canal de communication. En plus, les services web sont des technologies récentes, ceci implique de nouvelles vulnérabilités et attaques ou menaces.

Les solutions de sécurité des services web doivent prendre en charge les concepts suivants :

  • L’authentification
  • L’autorisation
  • La confidentialité
  • L’intégrité
  • La non-répudiation


Les utilisateurs des services web doivent être identifiés soit via un nom d’utilisateur combiné à un mot de passe soit via un certificat digital. Une fois l’utilisateur identifiés, il doit posséder l’autorisation ou l’habilitation nécessaire afin d’effectuer le traitement qu’il a demandé. Toutes informations ou messages sensibles mis en jeu par le traitement doivent être confidentiels et ne doivent pas subir d’altération qui touche à son intégrité d’origine. Une fois le traitement exécuté, des mesures de non-répudiation doivent être mises en place afin d’éviter tout dénis des deux parts (consommateurs/fournisseur).

KerberosKerberos est une technologie d’authentification qui utilise des jetons cryptographiques afin d’identifier les utilisateurs, il est aussi utilisé pour identifier les utilisateurs des services web.
SAMLSecurity Assertion Markup Language. SAML est un mécanisme basé sur XML qui permet d’échanger les informations d’authentification et d’autorisation qui fournissent un système de SSO pour les services Web.
XML SignatureLes spécifications XML Signature définissent la représentation des signatures digitales pour XML tout en fournissant la capacité de signer un document en entier ou des sections spécifiques.
XML EncryptionC’est une spécification similaire à XML Signature, elle définit les méthodes de cryptage et de décryptage de documents XML ou de sections spécifiques.
XKMSXML Key Management Specification. Cette spécification définit la manière d’enregistrer et de distribuer les clefs publiques, tout en gérant les problèmes de distribution des clefs dans les transactions où les parties n’ont pas communiqué au préalable.
XACMLExtensible Access Control Markup Language. XACML spécifie la manière de spécifier la politique de contrôle d’accès aux informations via un réseau.

Les commentaires sont fermés.