Secure Headers/fr : Différence entre versions

De Trustedbird Client Wiki
(Sécurisation du message: informations complémentaires)
 
(22 révisions intermédiaires par 3 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 
{{lang|Secure Headers|Secure Headers/fr}}
 
{{lang|Secure Headers|Secure Headers/fr}}
> [[Documentation/fr|Documentation]] > [[Trustedbird/fr|Trustedbird]] > [[Secure Headers/fr|Secure Headers]]
+
> [[Documentation/fr|Documentation]] > [[Trustedbird/fr|Trustedbird]] > [[Secure Headers/fr|En-têtes sécurisés]] > [[Secure_Headers_Technical_Documentation/fr|Documentation technique]]
   
   
Cette fonctionnalité permet lors de l'envoi d'un mail d'intégrer les champs d'en-tête de ce dernier dans la signature S/MIME, et plus précisément dans les attributs signés. Ce mécanisme, appelé '''''En-têtes sécurisés''''' ou '''''Secure headers''''', offre des services d'intégrité et de non répudiation des champs d'en-têtes sécurisés.
 
  +
Cette fonction offre des mécanismes de sécurisation des entêtes de messages lors de l'échange d'un message entre l'émetteur et son destinataire.
Grâce à ce mécanisme, il est possible de sécuriser des champs d'en-tête standards (RFC 5322, RFC 4021 ...) mais également des champs apportés par XIMF.
 
  +
Cette fonction garantit l'intégrité et la non répudiation des entêtes de messages en les intégrant dans la signature SMIME du message.
  +
Les mécanismes utilisés sont basés sur les concepts des attributs signés décrits dans [RFC 5652].
   
Une structure de champs d'en-têtes sécurisés est composée d'un algorithme de canonisation et de la liste des champs d'en-tête qui ont été sécurisés. Cette structure contient :
 
  +
Une description détaillée de la mise en oeuvre est disponilble : [[Secure_Headers_Technical_Documentation/fr|Documentation technique]].
* Le nom du champ
 
* La valeur du champ
 
* Le statut du champ à sécuriser (optionnel)
 
   
La description ASN.1 est la suivante :
 
 
HeaderField ::= SEQUENCE {
 
field-Name HeaderFieldName,
 
field-Value HeaderFieldValue,
 
field-Status HeaderFieldStatus OPTIONAL}
 
}
 
   
 
== Installation ==
 
== Installation ==
   
Cette fonctionnalité est intégrée dans '''[[Trustedbird/fr|Trustedbird 2]]'''. Elle est en cours de portage et sera intégrée dans la version Trustedbird 3.1.3.
 
  +
La gestion des entêtes sécurisés est intégrée directement dans les sources de Trustedbird 2 et Trustedbird 3.1.
  +
  +
=== Pré-requis ===
  +
  +
Pour signer les entêtes d'un message, il faut avoir installé un certificat valide pour l'utilisateur concerné.
  +
  +
=== Définir les entêtes de message à signer ===
  +
  +
Un fichier XML contient la liste des entêtes de message à intégrer dans la signature.
  +
Un fichier par défaut est chargé à l'installation du client. Il est possible de le modifier ou d'utiliser un autre fichier pour ajouter et supprimer des champs. Le fichier à utiliser est défini dans les préférences de compte utilisateur, section Entêtes signés.
  +
Le format ce ce fichier doit respecter strictement la structure suivante:
  +
Pour ajouter un élément, il convient d'ajouter : ”<ximf:header name=“XXXXXX” />” avec XXXXXX le champ qui correspond à un champ d'entête.
  +
  +
<?xml version="1.0" encoding="UTF-8"?>
  +
<ximf:secure_headers id="001" version="1.0" ximfVersion="2.0" xmlns:ximf="http://ximf.org/ximf/">
  +
<ximf:headers identity="XIMF_BASIC" canonalgo="0">
  +
<ximf:header name="X-XIMF-Primary-Precedence" status="0" />
  +
<ximf:header name="X-XIMF-Copy-Precedence" status="0" />
  +
<ximf:header name="X-XIMF-Correspondance-Type" />
  +
<ximf:header name="X-XIMF-Exchange-Type" />
  +
<ximf:header name="X-XIMF-Security-Policy-Identifier" />
  +
<ximf:header name="X-XIMF-Security-Classification-Identifier" />
  +
<ximf:header name="Sender" />
  +
<ximf:header name="To" />
  +
<ximf:header name="From" />
  +
<ximf:header name="Subject" />
  +
</ximf:headers>
  +
</ximf:secure_headers>
  +
  +
Il est possible d'ajouter un statut (status=“0”) précisant les mécanismes d'associations entre les entêtes du message et les entêtes intégrés dans la signature.
  +
'''Attention, seul le statut duplicated est implémenté dans la version disponible.'''
  +
Les différentes valeurs sont :
  +
  +
0 : Duplicated - duplication simple de l'entête du message dans la signature
  +
1 : Deleted - intégration de l'entête du message dans la signature et suppression du champ dans le message
  +
2 : Modified - intégration de l'entête du message dans la signature et modification du champ dans le message
  +
  +
  +
Les entêtes sont formatés dans la signature selon un algorithme de canonicalisation simple ou allégé (RFC 4871 §3.4.2).
  +
Cet algorithme est précisé par dans le fichier xml via l'attribut '''canonalgo''' de l'élément '''ximf:headers'''.
  +
Si l'attribut n'est pas spécifié dans le fichier, l'algorithme allégé sera appliqué.
  +
  +
0 : Algorithme de canonicalisation simple (simple canonicalization)
  +
1 : Algorithme de canonicalisation allégé (relaxed canonicalization)
  +
  +
=== Configuration du compte utilisateur ===
  +
  +
Pour choisir ou modifier le fichier XML contenant la liste des entêtes de message à sécuriser, il faut ouvrir la fenêtre des paramètres de compte utilisateur (menu Outils > Paramètres des comptes).
  +
La section Entêtes sécurisés permet de choisir le fichier XML.
  +
  +
[[File:SecureHeaders_settings.png‎ |center|caption]]
  +
 
== Utilisation ==
  +
  +
=== Signer un message et ses entêtes XIMF ===
  +
  +
Pour envoyer un message avec des entêtes signés, il faut activer l'option de signature du message et de sécurisation des entêtes.
  +
Pour activer l'option de sécurisation des entêtes, il suffit de sélectionner l'option via le menu options ou via la petite flèche à coté du bouton Sécurité.
  +
  +
[[File:SecureHeaders_compose.png‎ |center|caption]]
  +
  +
  +
le bouton “Sécurité” ou l'enveloppe visible dans la barre de statut permet d'accéder aux informations de sécurité du message et notamment la liste des entêtes qui vont être signés. Pour visualiser cette liste, il faut sélectionner l'option de sécurisation des entêtes (voir paragraphe précédent) mais aussi définir un sujet et un destinataire.
  +
La présence de la liste des entêtes dans cette interface permet ainsi de s'assurer que le message sera envoyé avec les entêtes signés.
  +
  +
[[File:SecureHeaders_compose_info.PNG‎ |center|caption]]
  +
  +
  +
==== Aller plus loin... ====
  +
Il est possible d'automatiser le processus de signature des entêtes sécurisés.
  +
En effet, l'extension [[Ximfmail]] permet de créer une règle rendant obligatoire la signature des messages envoyés. Dans, cette même règle, la liste des entêtes à sécuriser est enregistrée.
  +
Bien sur, pour utiliser ces fonctions, l'utilisateur devra établir une instance pour le moteur [[Ximfmail]].
  +
Ainsi, à chaque envoi de message, les fonctions de signature des entêtes sécurisés deviennent transparentes pour l'utilisateur.
  +
  +
=== Vérifier la signature d'un message reçu ===
  +
  +
Dans la boîte de réception des messages, ceux signés ont une icône [[File:SecureHeaders_read_icon.png||caption]] affichée près des boutons d'action sur le message.
  +
Pour visualiser ce qui est sécurisé, il faut cliquer sur cette enveloppe. Une fenêtre s'ouvre et affiche toutes les informations de sécurité pour ce message. Un bouton au bas de la fenêtre de sécurité des messages permet de voir le détail des entêtes sécurisés.
  +
  +
[[File:SecureHeaders_Read1.PNG‎ |center|caption]]
  +
  +
  +
[[File:SecureHeaders_Read_Security_Info.png‎ |center|caption]]
  +
  +
  +
==== Message reçu avec entêtes intègres ====
  +
Lorsque les mécanismes de vérification d'une signature valident l'intégrité et la non répudiation des entêtes du message, l'icône du message représentant une enveloppe simple est présentée et dans la fenêtre de détail des entêtes signés, ceux-ci sont marqués d'une coche verte.
  +
  +
[[File:SecureHeaders_Read_Ok.png‎ |center|caption]]
  +
  +
==== Message reçu avec entêtes non intègres ====
  +
Lorsque les mécanismes de vérification d'une signature détectent une non-intégrité d'un ou plusieurs entêtes du message, l'icône du message représentant une enveloppe est complétée d'un point d'interrogation et dans la fenêtre de détail des entêtes signés, ceux non intègres sont marqués d'une croix rouge.
  +
  +
[[File:SecureHeaders_Read_Nok.PNG‎ |center|caption]]
  +
  +
  +
==== Sécurisation du message: informations complémentaires ====
  +
  +
Une fonction de vérification de l’état de sécurisation d’un message reçu affiche un bandeau informatif dans le message analysé.
  +
Ce bandeau propose un texte détaillé alertant l’utilisateur de manière verbeuse, en complément de l’icône existante, du niveau de sécurité du message.
  +
Cette alerte est disponible dans la version 3.1.20 du client Trustedbird (livraison à venir).
  +
  +
Pour activer cette alerte, il faut cocher l’option « Indiquer l’état de sécurité de chaque message » de la section « Entêtes Sécurisés » des paramètres des comptes courrier et Groupes (accessible via le menu Outils > Paramètres des comptes).
  +
  +
5 niveaux d’alertes sont disponibles :
  +
  +
# message non sécurisé
  +
# intégrité du message assurée
  +
# signature du message non valide
  +
# entête(s) du message modifié(s)
  +
# signature valide mais intégrité pas complètement assurée
  +
  +
===== Détail des alertes =====
  +
Un message affichant un bandeau à fond jaune clair avec le texte « Ce message n’est pas sécurisé » indique à l’utilisateur que celui-ci n’est pas signé et a pu être modifié par une autre entité que le rédacteur de ce message:
  +
[[Fichier:Secureheaders-check-clearok.PNG‎|center]]
  +
  +
Un message affichant un bandeau à fond vert avec le texte « L’intégrité du message est assurée » indique à l’utilisateur que celui-ci est signé (entêtes de messages compris) et que tous les entêtes à sécuriser selon le fichier paramétré par l’utilisateur (Paramètres des comptes > Entêtes Sécurisés) sont effectivement signés:
  +
[[Fichier:Secureheaders-check-secureok.PNG‎|center]]
  +
  +
Un message affichant un bandeau à fond rouge avec le texte « La signature de ce message n’est pas valide » indique à l’utilisateur que celui-ci est signé et qu’il a été modifié par une autre entité que le rédacteur de ce message:
  +
[[Fichier:Secureheaders-check-securenok.PNG‎|center]]
   
== Utilisation ==
 
  +
Un message affichant un bandeau à fond rouge avec le texte « Un des champs d’entête a été modifié » indique à l’utilisateur que celui-ci est signé, que le corps du message est intègre mais que des entêtes ont été modifiés par une autre entité que le rédacteur de ce message. Le détail des entêtes modifiés est accessible en cliquant sur l’icône « enveloppe » ou sur le texte du bandeau:
  +
[[Fichier:secureheaders-check-secureko.PNG|center]]
  +
<br/>
  +
[[Fichier:Secureheaders-check-secureko-view.PNG|center]]
   
.
 
  +
Un message affichant un bandeau à fond orange avec le texte « La signature de ce message est valide mais son intégrité n’est pas complètement assurée » indique à l’utilisateur que celui-ci est signé (entêtes de messages compris) mais que tous les entêtes à sécuriser selon le fichier paramétré par l’utilisateur ne le sont pas dans ce message. Il peut donc subsister un doute sur l’intégrité de ces entêtes non sécurisés.Le détail des entêtes non signés est accessible en cliquant sur l’icône « enveloppe » ou sur le texte du bandeau:
  +
[[Fichier:Secureheaders-check-securewrn.PNG|center]]
  +
<br/>
  +
[[Fichier:Secureheaders-check-securewrn-view.PNG|center]]
   
== SASL External ==
 
   
Les mécanismes SASL External sont décrits en annexe A du RFC 4422.
 
  +
Les entêtes sécurisés ont été implémentés par [[File:Cassidian_logo.png|link=http://www.cassidian.com|150px]]

Version actuelle en date du 26 juillet 2012 à 16:45

English | Français

> Documentation > Trustedbird > En-têtes sécurisés > Documentation technique


Cette fonction offre des mécanismes de sécurisation des entêtes de messages lors de l'échange d'un message entre l'émetteur et son destinataire. Cette fonction garantit l'intégrité et la non répudiation des entêtes de messages en les intégrant dans la signature SMIME du message. Les mécanismes utilisés sont basés sur les concepts des attributs signés décrits dans [RFC 5652].

Une description détaillée de la mise en oeuvre est disponilble : Documentation technique.


Installation

La gestion des entêtes sécurisés est intégrée directement dans les sources de Trustedbird 2 et Trustedbird 3.1.

Pré-requis

Pour signer les entêtes d'un message, il faut avoir installé un certificat valide pour l'utilisateur concerné.

Définir les entêtes de message à signer

Un fichier XML contient la liste des entêtes de message à intégrer dans la signature. Un fichier par défaut est chargé à l'installation du client. Il est possible de le modifier ou d'utiliser un autre fichier pour ajouter et supprimer des champs. Le fichier à utiliser est défini dans les préférences de compte utilisateur, section Entêtes signés. Le format ce ce fichier doit respecter strictement la structure suivante: Pour ajouter un élément, il convient d'ajouter : ”<ximf:header name=“XXXXXX” />” avec XXXXXX le champ qui correspond à un champ d'entête.

 <?xml version="1.0" encoding="UTF-8"?>
 <ximf:secure_headers id="001" version="1.0" ximfVersion="2.0" xmlns:ximf="http://ximf.org/ximf/">
 	<ximf:headers identity="XIMF_BASIC" canonalgo="0">
 		<ximf:header name="X-XIMF-Primary-Precedence"  status="0" />
 		<ximf:header name="X-XIMF-Copy-Precedence" status="0" />
 		<ximf:header name="X-XIMF-Correspondance-Type" />
 		<ximf:header name="X-XIMF-Exchange-Type" />
 		<ximf:header name="X-XIMF-Security-Policy-Identifier" />	
 		<ximf:header name="X-XIMF-Security-Classification-Identifier" />  		
 		<ximf:header name="Sender" />
 		<ximf:header name="To" />
 		<ximf:header name="From" />
 		<ximf:header name="Subject" />	
 	</ximf:headers>
 </ximf:secure_headers>

Il est possible d'ajouter un statut (status=“0”) précisant les mécanismes d'associations entre les entêtes du message et les entêtes intégrés dans la signature. Attention, seul le statut duplicated est implémenté dans la version disponible. Les différentes valeurs sont :

 0 : Duplicated - duplication simple de l'entête du message dans la signature 
 1 : Deleted - intégration de l'entête du message dans la signature et suppression du champ dans le message
 2 : Modified - intégration de l'entête du message dans la signature et modification du champ dans le message


Les entêtes sont formatés dans la signature selon un algorithme de canonicalisation simple ou allégé (RFC 4871 §3.4.2). Cet algorithme est précisé par dans le fichier xml via l'attribut canonalgo de l'élément ximf:headers. Si l'attribut n'est pas spécifié dans le fichier, l'algorithme allégé sera appliqué.

 0 : Algorithme de canonicalisation simple (simple canonicalization)
 1 : Algorithme de canonicalisation allégé (relaxed canonicalization)

Configuration du compte utilisateur

Pour choisir ou modifier le fichier XML contenant la liste des entêtes de message à sécuriser, il faut ouvrir la fenêtre des paramètres de compte utilisateur (menu Outils > Paramètres des comptes). La section Entêtes sécurisés permet de choisir le fichier XML.

caption

Utilisation

Signer un message et ses entêtes XIMF

Pour envoyer un message avec des entêtes signés, il faut activer l'option de signature du message et de sécurisation des entêtes. Pour activer l'option de sécurisation des entêtes, il suffit de sélectionner l'option via le menu options ou via la petite flèche à coté du bouton Sécurité.

caption


le bouton “Sécurité” ou l'enveloppe visible dans la barre de statut permet d'accéder aux informations de sécurité du message et notamment la liste des entêtes qui vont être signés. Pour visualiser cette liste, il faut sélectionner l'option de sécurisation des entêtes (voir paragraphe précédent) mais aussi définir un sujet et un destinataire. La présence de la liste des entêtes dans cette interface permet ainsi de s'assurer que le message sera envoyé avec les entêtes signés.

caption


Aller plus loin...

Il est possible d'automatiser le processus de signature des entêtes sécurisés. En effet, l'extension Ximfmail permet de créer une règle rendant obligatoire la signature des messages envoyés. Dans, cette même règle, la liste des entêtes à sécuriser est enregistrée. Bien sur, pour utiliser ces fonctions, l'utilisateur devra établir une instance pour le moteur Ximfmail. Ainsi, à chaque envoi de message, les fonctions de signature des entêtes sécurisés deviennent transparentes pour l'utilisateur.

Vérifier la signature d'un message reçu

Dans la boîte de réception des messages, ceux signés ont une icône caption affichée près des boutons d'action sur le message. Pour visualiser ce qui est sécurisé, il faut cliquer sur cette enveloppe. Une fenêtre s'ouvre et affiche toutes les informations de sécurité pour ce message. Un bouton au bas de la fenêtre de sécurité des messages permet de voir le détail des entêtes sécurisés.

caption


caption


Message reçu avec entêtes intègres

Lorsque les mécanismes de vérification d'une signature valident l'intégrité et la non répudiation des entêtes du message, l'icône du message représentant une enveloppe simple est présentée et dans la fenêtre de détail des entêtes signés, ceux-ci sont marqués d'une coche verte.

caption

Message reçu avec entêtes non intègres

Lorsque les mécanismes de vérification d'une signature détectent une non-intégrité d'un ou plusieurs entêtes du message, l'icône du message représentant une enveloppe est complétée d'un point d'interrogation et dans la fenêtre de détail des entêtes signés, ceux non intègres sont marqués d'une croix rouge.

caption


Sécurisation du message: informations complémentaires

Une fonction de vérification de l’état de sécurisation d’un message reçu affiche un bandeau informatif dans le message analysé. Ce bandeau propose un texte détaillé alertant l’utilisateur de manière verbeuse, en complément de l’icône existante, du niveau de sécurité du message. Cette alerte est disponible dans la version 3.1.20 du client Trustedbird (livraison à venir).

Pour activer cette alerte, il faut cocher l’option « Indiquer l’état de sécurité de chaque message » de la section « Entêtes Sécurisés » des paramètres des comptes courrier et Groupes (accessible via le menu Outils > Paramètres des comptes).

5 niveaux d’alertes sont disponibles :

  1. message non sécurisé
  2. intégrité du message assurée
  3. signature du message non valide
  4. entête(s) du message modifié(s)
  5. signature valide mais intégrité pas complètement assurée
Détail des alertes

Un message affichant un bandeau à fond jaune clair avec le texte « Ce message n’est pas sécurisé » indique à l’utilisateur que celui-ci n’est pas signé et a pu être modifié par une autre entité que le rédacteur de ce message:

Secureheaders-check-clearok.PNG

Un message affichant un bandeau à fond vert avec le texte « L’intégrité du message est assurée » indique à l’utilisateur que celui-ci est signé (entêtes de messages compris) et que tous les entêtes à sécuriser selon le fichier paramétré par l’utilisateur (Paramètres des comptes > Entêtes Sécurisés) sont effectivement signés:

Secureheaders-check-secureok.PNG

Un message affichant un bandeau à fond rouge avec le texte « La signature de ce message n’est pas valide » indique à l’utilisateur que celui-ci est signé et qu’il a été modifié par une autre entité que le rédacteur de ce message:

Secureheaders-check-securenok.PNG

Un message affichant un bandeau à fond rouge avec le texte « Un des champs d’entête a été modifié » indique à l’utilisateur que celui-ci est signé, que le corps du message est intègre mais que des entêtes ont été modifiés par une autre entité que le rédacteur de ce message. Le détail des entêtes modifiés est accessible en cliquant sur l’icône « enveloppe » ou sur le texte du bandeau:

Secureheaders-check-secureko.PNG


Secureheaders-check-secureko-view.PNG

Un message affichant un bandeau à fond orange avec le texte « La signature de ce message est valide mais son intégrité n’est pas complètement assurée » indique à l’utilisateur que celui-ci est signé (entêtes de messages compris) mais que tous les entêtes à sécuriser selon le fichier paramétré par l’utilisateur ne le sont pas dans ce message. Il peut donc subsister un doute sur l’intégrité de ces entêtes non sécurisés.Le détail des entêtes non signés est accessible en cliquant sur l’icône « enveloppe » ou sur le texte du bandeau:

Secureheaders-check-securewrn.PNG


Secureheaders-check-securewrn-view.PNG


Les entêtes sécurisés ont été implémentés par Cassidian logo.png