Secure Headers Technical Documentation/fr : Différence entre versions

De Trustedbird Client Wiki
(Préférences de compte)
Ligne 6 : Ligne 6 :
 
=== Préférences de compte ===
 
=== Préférences de compte ===
   
Une section "entêtes sécurisés"est insérée pour chaque compte utilisateur afin de définir le fichier XML contenant les entêtes à sécuriser.
+
Une section "entêtes sécurisés" est insérée pour chaque compte utilisateur afin de définir le fichier XML contenant les entêtes à sécuriser.
Quant au fichier XML de description des entêtes, un fichier par défaut se trouve dans les sources. Lors de l'installation du client, il est copié dans le répertoire du profile utilisateur.
+
Quant au fichier XML de description des entêtes, un fichier par défaut se trouve dans les sources et est copié dans le répertoire du profile utilisateur lors de l'installation du client.
   
 
[[File:SecureHeader_sch_settings.png||]]
 
[[File:SecureHeader_sch_settings.png||]]

Version du 7 octobre 2010 à 11:46

Mécanismes

Les mécanismes assurant la sécurisation des entêtes de message sont basés sur les concepts des attributs signés d'un objet: Les champs d'entêtes (nom + valeur) à sécuriser sont insérés au sein d'une structure, elle même encapsulée dans une structure SignedAttributes intégrée dans un objet SignerInfo. Ensuite, le processus de calcul du condensé de la signature est réalisé à partir du contenu de message ainsi que des données présentes dans la structure des attributs signés.

Architecture

Préférences de compte

Une section "entêtes sécurisés" est insérée pour chaque compte utilisateur afin de définir le fichier XML contenant les entêtes à sécuriser. Quant au fichier XML de description des entêtes, un fichier par défaut se trouve dans les sources et est copié dans le répertoire du profile utilisateur lors de l'installation du client.

SecureHeader sch settings.png

Composition de message

En composition de message, l'utilisateur peut ajouter les entêtes définis dans le fichier de configuration dans la signature via le menu “options > Entêtes de message” ou via le bouton “sécurité > entêtes de messages”. Deux items de menu sont créés dynamiquement par le javascript afin de rendre actif ou non l'option des secure Headers. La valeur de l'un remplace la valeur de l'autre afin que les deux aient la même valeur. Par la suite, la valeur que va prendre le menuitem va déterminer si le message sera envoyé avec les entêtes sécurisés. Une fenêtre permet de visualiser la liste des entêtes sécurisés à l'envoi du message.

SecureHeader sch compose.png

Réception de message

A la lecture d'un message, une enveloppe avec un point rouge permet de voir les entêtes qui ont été sécurisés.

SecureHeader sch read.png

Arborescence

La sécurisation des entêtes est intégrée dans les sources de Thunderbird pour le produit TrustedBird. La majorité du code se trouve dans comm-1.9.2/mailnews/extensions/secureheaders, cette partie correspond aux interfaces graphiques spécifiques des entêtes sécurisées. D'autres fichiers sont modifiés pour utiliser les IHMs déjà présentes et surcharger l'existant afin d'intégrer cette fonction supplémentaire. Ainsi, comm-1.9.2/mailnews/extensions/smime contient des ajouts pour afficher dans des fenêtres déjà existantes les informations sur les entêtes sécurisés. C'est aussi cette extension qui est utilisée pour le chiffrage et déchiffrage des entêtes. Les fichiers concernés pour les secureHeaders sont:

 ./comm-1.9.2/mailnews/extensions/makefile.in
                                 /secureheaders/resource
                                 /secureheaders/src
                                 /secureheaders/jar.mn
                                 /secureheaders/makefile.in
             /mail/installer/package-manifest.in

Intégrer le service de configuration des Secure Headers dans les préférences de compte

Pour la compilation, le fichier am-service-secureheaders.js doit être déclaré dans le makefile.in du composant via la variable

 EXTRA_COMPONENTS = src/am-service-secureheaders.js

Pour le packaging, le fichier am-service-secureheaders.js doit être déclaré dans le fichier .\comm-1.9.2\mail\installer\package-manifest.in

 @BINPATH@/components/am-service-secureheaders.js