Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Personnalisation des en-têtes HTTP pour les messages AS2
Lorsque vous envoyez AS2 des messages à des partenaires commerciaux, vous devrez peut-être personnaliser les en-têtes HTTP pour répondre à des exigences spécifiques ou améliorer la compatibilité avec la configuration du AS2 serveur de votre partenaire. Ce AWS CloudFormation modèle crée une infrastructure permettant d'activer des en-têtes HTTP personnalisés pour les AS2 messages envoyés. AWS Transfer Family Il met en place une fonction Amazon API Gateway et Lambda agissant comme un proxy, permettant la modification dynamique des en-têtes requis par les serveurs des partenaires commerciaux. AS2
Utilisez ce modèle pour effectuer les opérations suivantes :
-
Ajouter des en-têtes HTTP personnalisés aux messages sortants AS2
-
Remplacer les valeurs d'en-tête par défaut par des valeurs personnalisées
Important
Soyez prudent lorsque vous remplacez les valeurs d'en-tête par défaut, car cela peut entraîner des échecs d'envoi : certains AS2 en-têtes sont nécessaires.
-
Garantir la compatibilité avec les partenaires commerciaux qui ont des exigences spécifiques en matière d'en-têtes
Présentation du modèle
Le modèle crée les principaux composants suivants :
-
Une fonction Lambda qui traite et transmet les messages AS2
-
Un Amazon API Gateway pour exposer la fonction Lambda
-
Rôles et autorisations IAM pour la fonction Lambda
-
Ressources conditionnelles pour le support HTTPS
Le fichier modèle est disponible ici : Modèle d'en-têtes HTTP dynamiques
Comment ça marche
-
Amazon API Gateway reçoit les AS2 messages entrants de AWS Transfer Family.
-
La demande est transmise à la fonction Lambda.
-
La fonction Lambda traite la demande en ajoutant ou en modifiant des en-têtes selon les besoins.
-
La demande modifiée est ensuite transmise au AS2 serveur du partenaire.
-
La réponse du serveur du partenaire est renvoyée via Lambda et Amazon API Gateway à. AWS Transfer Family
Fonctionnalités principales
-
Modification dynamique de l'en-tête : permet de personnaliser l'en-tête du sujet et d'ajouter d'autres en-têtes requis.
-
Support de protocole : fonctionne avec les protocoles HTTP et HTTPS.
-
Configuration flexible : permet de spécifier l'hôte, le port et le chemin du partenaire.
Détails de l'implémentation
Le modèle implémente les composants clés suivants :
Fonction Lambda
Le cœur de la solution est une fonction Lambda Node.js qui :
-
Reçoit les demandes d'Amazon API Gateway
-
Modifie les en-têtes en fonction de la configuration et des données de demande entrantes
-
Transmet la demande modifiée au AS2 serveur du partenaire
-
Gère les protocoles HTTP et HTTPS
-
Inclut la gestion des erreurs et la journalisation
Amazon API Gateway
Une API HTTP est configurée pour :
-
Recevoir des AS2 messages entrants
-
Acheminer les demandes vers la fonction Lambda
-
Retourner les réponses à AWS Transfer Family
Paramètres du modèle
Entrez les informations relatives aux paramètres du modèle comme suit. Notez que tous ces paramètres sont des chaînes.
-
Environment
: ce paramètre est utilisé pour nommer les ressources créées par le modèle : qu'elles soient destinées à un environnement de développement ou de production. Les valeurs valides sont dev et prod. -
PartnerHost
: adresse IP ou nom d'hôte du serveur AS2 partenaire. -
PartnerPort
: le numéro de port du serveur AS2 partenaire. Si ce n'est pas spécifié, la valeur par défaut est 80 pour HTTP et 443 pour HTTPS. -
PartnerPath
: le chemin d'accès au AS2 point de terminaison sur le serveur partenaire -
ProtocolType
: le protocole à utiliser pour la AS2 communication : les valeurs valides sont HTTP et HTTPS.
Ressources conditionnelles
Pour la prise en charge du protocole HTTPS, le modèle crée de manière conditionnelle :
-
Une couche Lambda pour les certificats CA
-
Configuration spécifique au protocole HTTPS dans la fonction Lambda
Déploiement et utilisation
Pour personnaliser les en-têtes AS2 HTTP à l'aide d'un modèle CloudFormation
-
Ouvrez la AWS CloudFormation console à l'adresse https://console.aws.amazon.com/cloudformation.
-
Dans le volet de navigation de gauche, choisissez Stacks (Piles).
-
Choisissez Créer une pile, puis choisissez Avec de nouvelles ressources (standard).
-
Dans la section Prérequis - Préparer le modèle, choisissez Choisir un modèle existant.
-
Copiez ce lien, modèle d'en-têtes HTTP dynamique
, et collez-le dans le champ URL d'Amazon S3. -
Choisissez Suivant.
-
Renseignez les détails des paramètres avec vos informations. Elles sont détaillées dansParamètres du modèle.
-
Choisissez Suivant. Sur la page Configurer les options de pile, sélectionnez à nouveau Next.
-
Passez en revue les détails de la pile que vous créez, puis choisissez Create stack.
Note
Au bas de la page, sous Capacités, vous devez reconnaître que cela AWS CloudFormation peut créer des ressources AWS Identity and Access Management (IAM).
Après avoir déployé cette AWS CloudFormation pile :
-
Notez l'URL du point de terminaison Amazon API Gateway fournie dans les sorties de la pile.
-
Mettez à jour votre AWS Transfer Family connecteur existant pour utiliser ce nouveau point de terminaison Amazon API Gateway.
-
La solution gérera désormais les AS2 messages, en ajoutant ou en modifiant les en-têtes tels que configurés.
Avertissement
Modifiez uniquement l'en-tête du sujet ou ajoutez des en-têtes que votre partenaire attend explicitement. La modification d'autres en-têtes peut entraîner des échecs de transfert.