• Aucun résultat trouvé

8. Architecture d’un système de messagerie basé sur le concept de correspondance

8.5 Extension du standard IMF

Lorsqu'un message est acheminé au sein d'un système de messagerie, il est nécessaire d'identifier la correspondance courante. Pour cela, le message doit comporter des informations relatives à la correspondance. Le principe que nous proposons est d'ajouter, lors de l'évènement de création, des informations dans un champ dédié de l'entête du message. Ceci a pour principal intérêt de permettre la transmission de ces informations jusqu'au destinataire final. La présence de ce champ dans le message permet aux différents agents du système de messagerie de détecter la référence de correspondance et d'appliquer la politique appropriée.

8.5.1 Champ d'identification de la correspondance électronique

Le standard IMF permet l'ajout de champs dans l'entête du message. Ces champs peuvent soit faire l'objet d'une standardisation ou bien se limiter à un besoin particulier et ne pas être publiés.

130

Le RFC 4021 [156] est un document, maintenu par l'IANA, réunissant au sein d'un même référentiel53, les champs ayant fait l'objet d'une standardisation.

Notre objectif est de définir un nouveau champ permettant le transport de la référence de correspondance électronique. Cette référence doit contenir les informations suivantes:

 le nom de la correspondance  la version de la correspondance

 le nom de domaine (au sens DNS) du fournisseur de la correspondance

Ces informations sont réunies au sein d'un même champ dont la description ABNF est fournie ci-dessous.

correspondence-header = "Correspondence:" cor-name ";" cor-version ";" cor-domain CRLF cor-name = [FWS] "name" [FWS] "=" [FWS] %d34 structured-field %d34

cor-version = [FWS] "version" [FWS] "=" [FWS] %d34 structured-field %d34 cor-domain = [FWS] "domain" [FWS] "=" [FWS] %d34 structured-field %d34 structured-field = 1*allowed-character

allowed-character = UTF8-xtra-char ; cf. RFC5335, I18N Email Headers

Un message respectant le standard IMF et porteur de ce champ sera appelé XIMF (eXtended

IMF). Un exemple permettant d'illustrer la description de ce champ d'entête est fourni ci-

dessous.

Correspondence: name="example" ; version="1.02"; domain="example.org"

Les agents du système embarquant les mécanismes décrits dans cette thèse doivent être capables de détecter la présence de ce champ et d'en extraire la référence de correspondance. Dans le cas contraire, cela peut être notamment problématique pour le destinataire. En effet, si le MUA n'intègre pas ces mécanismes, il ne permettra pas un traitement approprié et l'utilisateur ne pourra pas visualiser toutes les informations présentes dans le message étendu. Pour répondre à ce problème, nous proposons la définition d'un type MIME spécifique et dédié aux concepts de correspondance. Lors de la création d'un message, un objet MIME particulier est ajouté dans le corps du message.

Lors de la réception d'un message étendu, deux cas peuvent se présenter :

 soit l'agent n'embarque pas de mécanisme de détection de la référence de correspondance. Il peut cependant afficher un contenu informant l'utilisateur que le message est étendu. Ce contenu peut également comporter des informations comme l'adresse d'un site permettant le téléchargement d'un client compatible.

131

 soit l'agent embarque des mécanismes de détection de la référence de correspondance et est capable de traiter le message. Dans ce cas, il masque le contenu MIME spécifique présent dans le message. Ce mécanisme est le même que celui mis en œuvre lors de la réception d'un message avec un contenu MIME encapsulant une signature cryptographique. Le MUA effectue les traitements de vérification de la signature mais n'affiche pas le contenu MIME lié à la signature.

La rédaction d'un document décrivant la référence de correspondance et l'extension du standard IMF, avec pour objectif une soumission auprès de l'IETF, est en cours.

8.5.2 Extension du message basé sur le concept de messages semi-structurés

La présence du champ de référence de la correspondance permet à un agent du système de détecter un message étendu (message de type XIMF). Cependant, la présence d'autres éléments de services peut être imposée pour une correspondance donnée. Le message peut comporter d'autres métadonnées dans l'entête du message. Il est par exemple possible d'ajouter un label de sensibilité de l'information ou bien des informations spécifiques à un projet. Le message pourrait également comporter des pièces jointes particulières ou bien une signature cryptographique.

Chaque type de correspondance peut imposer la description de formats spécifiques de message. Afin de prendre en compte ces aspects, nous introduisons la notion de profil de message que nous définissons comme la description des éléments de services qui doivent être présents dans le message pour un type de correspondance donné. Un élément de service peut prendre la forme d'un champ d'entête particulier, d'une pièce jointe, d'une signature cryptographique, d'une donnée d'horodatage...).

Un exemple de format de message militaire permet de décrire plus en détail ce concept de profil. Dans cet exemple, le profil peut être basé sur le RFC6477 [153] et les travaux [157]. Ces deux documents proposent une liste des champs d'entête à utiliser afin de garantir une interopérabilité avec un système militaire de type MMHS basé sur les protocoles de l'Internet. Les champs définis sont les suivants:

 MMHS-Exempted-Address  MMHS-Extended-Authorisation-Info  MMHS-Subject-Indicator-Codes  MMHS-Handling-Instructions  MMHS-Message-Instructions  MMHS-Codress-Message-Indicator  MMHS-Originator-Reference  MMHS-Primary-Precedence  MMHS-Copy-Precedence  MMHS-Message-Type  MMHS-Other-Recipients-Indicator-To  MMHS-Other-Recipients-Indicator-CC  MMHS-Acp127-Message-Identifier  MMHS-Originator-PLAD

132

Le profil de cet exemple de message militaire, décrit en langage XML simplifié, est proposé dans la Figure 55. Il ne décrit la présence que de deux champs d'entête. Cependant, dans un profil complet, tous les champs devraient être présents.

1 <CORRESPONDENCE name="MIL" version = "1.0" domain="example.org"> 2 <EVENT eventId="CREATION">

3 <MESSAGE_PROFILE> 4 < HEADER_FIELDS>

5 <HEADER_FIELD> MMHS-Extended-Authorisation-Info 6 <STATUS> Optional </STATUS>

7 </HEADER_FIELD>

8 <HEADER_FIELD> MMHS-Primary-Precedence 9 <STATUS> Mandatory </STATUS> 10 </HEADER_FIELD> ... 11 < /HEADER_FIELDS> 12 < /MESSAGE_PROFILE > 13 </EVENT> 14 <EVENT eventId="DISPLAY"> 15 <MESSAGE_PROFILE> 16 < HEADER_FIELDS> 17 <HEADER_FIELD> MMHS-Extended-Authorisation-Info 18 <STATUS> Optional </STATUS>

19 </HEADER_FIELD>

20 <HEADER_FIELD> MMHS-Exempted-Address 21 <STATUS> Mandatory </STATUS> 22 </HEADER_FIELD> ... 23 < /HEADER_FIELDS> 24 < /MESSAGE_PROFILE > 25 </EVENT> 26 </CORRESPONDENCE >

Figure 55 : exemple de profil d'un message militaire

Nous pouvons remarquer que ce profil fait référence à deux évènements; creation et display. Ce profil décrit donc le format des messages eocr et eodp .

La Figure 56 illustre deux exemples de messages ; IMF et XIMF. Le message XIMF affiché comporte des champs d'entête additionnels qui correspondent aux champs militaires décrits dans le profil précédent.

133

Figure 56 : exemple de message IMF et XIMF