Altova FlowForce Server 2024 Advanced Edition

Exemple : Échange de message AS2 complet (Simple)

Accueil Préc Haut Suivant

Cet exemple illustre comment configurer un échange de message AS2 entre deux partenaires AS2, d’un point de vue de FlowForce Server. Dans cet exemple, le partenaire AS2 eexpéditeur et le partenaire AS2 bénéficiare sont des instances de FlowForce Server.

 

Appelons le serveur d'envoi "Hermes" et le serveur de réception "Apollo". Notons aussi qu’Hermes exécute sur CentOS tandis qu’Apollo est exécuté sur Windows (ce détail est important uniquement pour les chemins et la configuration, tel qu’affiché ci-dessous). L'objectif de cet exemple est comme suit :

 

Le serveur d'envoi (Hermes) doit envoyer un message AS2 avec succès au serveur AS2 de réception (Apollo).

Le serveur de réception (Apollo) doit traiter le message entrant avec succès et le stocker localement.

 

Cet exemple illustre le scénario de communication le plus simple possible entre deux partenaires AS2 (la première de douze permutations possibles conformément à la section 2.4.2 de RFC 4130), ce qui signifie, essentiellement :

 

L'expéditeur envoie des données AS2 non chiffrées

L'expéditeur envoie des données AS2 non signées

L'expéditeur ne nécessite pas qu'une MDN soit retournée en réponse au message

 

Autres hypothèses :

 

Apollo et Hermes sont tous les deux exécutés sur un réseau privé local.

Le serveur de réception AS2 (Apollo) acceptera des requêtes HTTP depuis des clients non authentifiés (c'est-à-dire que le service AS2 sera adressé publiquement).

 

Prérequis

FlowForce Server Advanced Edition doit être installé et mis sous licence sur les appareils Apollo et Hermes.

Sur les serveurs Apollo et Hermes, l'interface d'administration FlowForce Web doit être en bon fonctionnement sur l'hôte et le port configuré (par exemple, http://apollo:8082 et http://hermes:8082, en partant du principe que "apollo" et "hermes" sont les noms d'hôte respectifs). Voir aussi Définir les paramètres de réseau.

 

Configurer l'envoi du serveur AS2 ("Hermes")

1.Se connecter sur l'interface d'administration FlowForce Web et créer un nouveau partenaire AS2 appelé "APOLLO" (voir aussi Configurer les partenaires AS2). Ce partenaire identifie le serveur qui recevra les messages AS2. Puisque le chiffrage, la signature et la MDN ne sont pas requis dans cet exemple simple, les seuls paramètres de partenaire qui doivent être définis sont les suivants :

ff_as2_ex1-01

Comme illustré ci-dessus, le nom du partenaire AS2 utilisé pour la communication AS2 est "Apollo", alors que l'objet de partenaire stocké dans FlowForce Server est "APOLLO". La valeur "Demander URL" part du principe que le nom d'hôte du partenaire est aussi apollo. Si le nom de l'hôte est différent, ajuster l'URL en conséquence. Nous allons configurer le service AS2 actuel derrière cet URL dans une étape ultérieure.

 

2.Créer une nouvelle tâche qui envoie un message AS2.

 

a) Ouvrir le conteneur public, et cliquez sur Créer | Créer tâche.

ff_as2_ex1-01a

Saisir un nom de tâche (par exemple, "CopyFiles"), et en option, une description de tâche.

 

b) Cliquez sur Nouveau déclencheur du système de fichier puis définir les paramètres de déclencheur tel que montré ci-dessous. Si le répertoire /home/altova/as2/outgoing n'existe pas sur l'appareil Hermes, le créer.

ff_as2_ex1-02a

Dés que vous ajoutez un déclencheur, un paramètre appelé triggerfile est ajouté à la tâche. Ce paramètre représente le nom de fichier qui déclenchera cette tâche automatiquement, à chaque fois que vous copiez un fichier sous /home/altova/as2/outgoing. Pour plus d'information, voir Déclencheurs de système de fichier.

 

c) Ajoute une étape d'exécution qui envoie un fichier EDI depuis le chemin local défini précédemment au partenaire AS2. Pour plus d'information concernant ce que fait cette étape, voir Envoyer des messages AS2.

ff_as2_ex1-02

d) Enfin, ajouter les identifiants du compte d'utilisateur sur l'appareil local (généralement, le nom d'utilisateur et le mot de passe que vous utilisez pour se connecter sur cet appareil). Veuillez noter que ces identifiants ne sont pas les mêmes que le nom d'utilisateur et le mot de passe que vous utilisez pour l'interface d'administration FlowForce Web. Pour plus d'informations, voir Identifiants.

ff_as2_create_job_4

e) Cliquer sur Enregistrer. La tâche doit maintenant apparaître sous "Déclencheurs actifs" dans la page d'accueil de FlowForce Server.

ff_as2_ex1-04a

 

Configurer le serveur AS2 récepteur ("Apollo")

1.Configurer FlowForce Server pour accepter les connexions des clients AS2 dans l'URL désignée. Dans cet exemple, les clients AS2 se connecteront à Apollo par le biais d'un HTTP clair sur le port par défaut 4646, donc la page de configuration devrait ressembler à ce qui suit (voir aussi Définir les paramètres de réseau):

ff_as2_ex1-04

2.Veuillez vous assurer que FlowForce Server est autorisé à communiquer par le biais du pare-feu du système d'exploitation. Dans cet exemple, puisque le FlowForce Server « Apollo » est exécuté sur Windows, iil doit être autorisé pour communiquer par la biais de Windows Defender Firewall.

ff_as2_ex1-05

3.Créer un nouveau conteneur FlowForce Server ; appelons-le "as2service". (Dans FlowForce, les permissions sont définies au niveau du conteneur, il est donc conseillé de créer un conteneur séparé pour la tâche qui recevra le message AS2. De cette manière, vous pourrez définir des permissions spécifiques AS2 uniquement sur le conteneur requis, sans toucher aux permissions applicables à d'autres tâches FlowForce existantes).

ff_as2_ex1-06

4.Ouvrir le conteneur "as2service" défini précédemment et créer le partenaire d'expédition, Hermes, comme indiqué ci-dessous. La valeur "Demander URL" part du principe que le nom d'hôte du partenaire est aussi hermes. Si le nom de l'hôte est différent, ajuster l'URL en conséquence.

ff_as2_ex1-07

Assurez-vous que les paramètres d'interopérabilité sont les mêmes sur les deux serveurs, par exemple :

ff_as2_ex1-08

5.Ouvrir le conteneur "as2service" défini précédemment et créer une nouvelle tâche. L'objectif de cette tâche est d'exposer un service AS2 qui écoute les requêtes AS2. Lorsqu'un nouveau message AS2 est reçu, cette tâche le copiera dans un dossier temporaire.

ff_as2_ex1-09a

a) Choisir la case à cocher Rendre cette tâche disponible via HTTP sous... et donner un nom au service AS2 (dans cet exemple, "as2-receiver").

ff_as2_ex1-09

b) Comme illustré ci-dessus, choisir l'option service AS2 depuis la liste déroulante. En résultat, deux paramètres d'entrée sont ajoutés à la tâche, partner et message. Ceux-ci peuvent être utilisés pour traiter et stocker l'information concernant le partenaire expéditeur et le message, respectivement. Dans cet exemple, nous allons stocker le message uniquement, comme montré dans une étape suivante.

ff_as2_ex1-10

c) Ajouter une étape d'exécution qui copie le message reçu dans un chemin local. Les expressions de FlowForce Server utilisées ci-dessous convertissent essentiellement le message en un fichier, et composent le nom de fichier sur la base du champ Message-ID header. Pour une explication plus détaillée de ces expressions, voir Recevoir des messages AS2.

ff_as2_ex1-11

Veuillez vous assurer que le répertoire C:\as2\incoming existe. C'est le répertoire dans lequel les communications AS2 reçues seront enregistrées.

 

d) Enfin, ajouter les identifiants du compte d'utilisateur sur l'appareil local (généralement, le nom d'utilisateur et le mot de passe que vous utilisez pour se connecter sur cet appareil). Veuillez noter que ces identifiants ne sont pas les mêmes que le nom d'utilisateur et le mot de passe que vous utilisez pour l'interface d'administration FlowForce Web. Pour plus d'informations, voir Identifiants.

ff_as2_create_job_4

6.Rendez-vous sur le conteneur public / as2service, et cliquer sur Permissions. Cliquez surAjouter des permissions et assignez la permission "Service: Utilisez" à l'utilisateur user anonymous sur le conteneur "as2service".

ff_as2_ex1-11a

Les permissions de conteneurs ressemblent désormais à :

ff_as2_ex1-12

Cela rend le service AS2 public et permet à toute personne d'accéder et de le consommer sans authentification.

 

Envoyer le message AS2

Sur l'appareil Hermes, copier un fichier .edi dans le répertoire configuré précédemment, /home/altova/as2/outgoing. Lorsque l’intervalle d’interrogation du répertoire s’écoule (60 secondes, par défaut), le déclencheur est exécuté, et la tâche envoie le fichier au service AS2 sur l'appareil Apollo.

 

Pour visualiser le résultat de la tâche, vérifiez le journal de FlowForce Server, voir Afficher le journal de tâche. Si la tâche échoue, la raison sera indiquée dans le journal. Il pourrait y avoir de multiples raisons pourquoi une tâche échoue, y compris ceci :

 

Le chemin vers le fichier EDI sur Hermes est incorrect

Les identifiants du système d'exploitation Hermes spécifiés dans la tâche sont incorrects

Le service Apollo http://apollo:4646/service/as2-receiver n'est pas disponible parce que le pare-feu de l'appareil Apollo le bloque

Les permissions de conteneur de FlowForce Server pour le service http://apollo:4646/service/as2-receiver interdisent l'accès anonyme (c'est-à-dire que le service AS2 n'est pas accessible aux clients)

Le paramètre "Demande URL" du partenaire Apollo est incorrect (sur l'appareil Hermes, sur l'appareil Apollo, ou les deux)

Les paramètres "Paramètres d'interopérabilité" sont malconfigurés pour le partenaire Hermes sur l'appareil Apollo.

 

En cas de succès, la tâche de réception sur l'appareil Apollo traite le message entrant et crée un nouveau fichier sous le chemin suivant : C:\as2\incoming.

© 2018-2024 Altova GmbH