B. La
nécessité de la sécurité des services
La sécurité recouvre l'ensemble de techniques
informatiques permettant de réduire au maximum les chances de fuites
d'information, de modification de données ou de
détérioration des services. Ceci recouvre donc notamment la
prévention des intrusions et des dénis de service. Il existe
déjà aujourd'hui un très grand nombre de méthodes,
de technologies, d'architectures permettant d'atteindre un certain niveau de
protection. Ainsi, gérer la sécurité des informations
transmises, c'est s'assurer que les informations transmises sont tenues
secrètes et ne peuvent être uniquement dévoilées
qu'aux parties habilitées : confidentialité. C'est aussi
s'assurer que les informations reçues sont identiques aux informations
transmises ; ce qui signifie qu'elles n'ont pas été
modifiées ou détruites de manière non
autorisée : intégrité. C'est par ailleurs
vérifier l'identité de l'expéditeur afin de s'assurer que
seules les personnes autorisées ont accès aux ressources :
authentification. C'est enfin être capable d'apporter la preuve de
l'origine ou de la livraison des informations afin de protéger
l'émetteur contre une fausse déclaration de non réception
par le destinataire et le destinataire contre une fausse déclaration de
non émission par l'émetteur : non répudiation.
1.
L'authentification et la confidentialité
L'authentification peut être mise en oeuvre en utilisant
un modèle de données contenant des informations
d'authentification des utilisateurs (compte et mot de passe). A ceci il peut
être ajouté niveaux d'autorisations en définissant des
rôles et des stratégies d'accès aux services qui vont
être gérés par la spécification XACML. La
spécification XACML permet aussi d'utiliser les certificats de
sécurité pour s'authentifier. Cette authentification peut
être incluse dans le mécanisme de signature électronique
qui permet aussi de gérer l'intégrité et la non
répudiation. Pour gérer l'authentification, le module de
sécurité doit connaître tous ceux qui peuvent
s'authentifier. Gérer l'authentification consiste alors à
retrouver les paramètres d'authentification présents dans le
message. Une fois en possession de ces paramètres, le module de
sécurité compare avec les informations d'authentification qu'il
détient. Par exemple, si l'authentification se fait par compte et mot de
passe, le module de sécurité vérifie de la manière
appropriée le compte et le mot de passe fournis par l'utilisateur. Si
l'authentification se fait par les certificats, le module de
sécurité doit contacter l'autorité de certificat du
service afin qu'il valide le certificat utilisé par l'application
cliente. Au sortir de ce processus, le module de sécurité rejette
la requête utilisateur si ces paramètres d'authentification n'ont
pas été validés.
Par ailleurs, la confidentialité est assurée par
la création d'un jeton de communication sécurisé. Le jeton
se charge de crypter les données nécessaires ou indiquées
en utilisant l'algorithme de cryptage qu'on lui a indiqué (XML
Encryption). Au niveau de l'implémentation, l'on peut s'arranger
à garder un jeton correctement identifié et correctement
sécurisé dès lors que la connexion est bien établie
et le perdre en fin de communication. Les certificats de sécurité
permettent aussi de gérer la confidentialité des messages en
cryptant les informations échangées à l'aide du
mécanisme de clés privées/clés publiques et de
l'algorithme RSA. Notons que RSA est l'un des algorithmes de cryptages fiables,
utilisés aujourd'hui.
|