View a markdown version of this page

Utilisation d'intercepteurs avec Gateway - Base rocheuse de l'Amazonie AgentCore

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.

Utilisation d'intercepteurs avec Gateway

La configuration des intercepteurs sur votre passerelle vous permet d'exécuter un code personnalisé lors de chaque appel de votre passerelle. Cette section fournit des conseils sur la mise en œuvre et la configuration des intercepteurs pour votre passerelle.

Vue d’ensemble

La configuration des intercepteurs sur votre passerelle vous permet d'exécuter un code personnalisé lors de chaque appel de votre passerelle. Ceci est utile pour les cas d'utilisation suivants :

  • Mise en œuvre d'un contrôle d'accès précis aux outils ou aux opérations MCP

  • Transformer la demande cible et la réponse de la passerelle

  • Mise en œuvre d'une logique d'autorisation personnalisée

Deux types d'intercepteurs peuvent être configurés sur votre passerelle :

  • Intercepteurs REQUEST — Exécutés avant que la passerelle n'appelle la cible. Ils sont utiles pour la validation des demandes, la transformation ou l'autorisation personnalisée.

  • Intercepteurs de RÉPONSE — Exécutés après la réponse de la cible mais avant que la passerelle ne renvoie la réponse à l'appelant. Ils sont utiles pour la transformation des réponses, le filtrage ou l'ajout d'en-têtes personnalisés.

Une passerelle peut avoir au plus un intercepteur REQUEST et au plus un intercepteur RESPONSE configurés. Vous pouvez configurer les deux types sur la même passerelle, mais vous ne pouvez pas avoir plusieurs intercepteurs du même type.

Actuellement, les intercepteurs ne peuvent être configurés qu'avec des fonctions Lambda.

Bonnes pratiques de sécurité

Lors de la mise en œuvre d'intercepteurs, il est important de suivre les meilleures pratiques de sécurité pour protéger les informations sensibles et maintenir un contrôle d'accès adéquat.

  1. Par défaut, les en-têtes de demande ne seront pas transmis à un intercepteur à moins que le passRequestHeaders champ ne soit défini sur true. Soyez prudent lorsque vous utilisez ce champ car les en-têtes de demande peuvent contenir des informations sensibles telles que des jetons d'authentification et des informations d'identification. Assurez-vous que votre intercepteur n'enregistre pas ces informations sensibles.

  2. Veillez à limiter le rôle d'exécution de votre passerelle afin qu'il soit uniquement autorisé à invoquer les fonctions lambda spécifiques que vous utilisez en tant qu'intercepteurs et à ne pas accorder d'autorisations lambda génériques à votre rôle d'exécution.

  3. Implémentez des fonctions Lambda idempotentes pour vos intercepteurs. La passerelle peut réessayer de demander aux fonctions Lambda de l'intercepteur en cas d'échec ou de temporisation. Assurez-vous que votre logique d'intercepteur peut gérer les appels dupliqués en toute sécurité en implémentant des clés d'idempotence, en suivant les demandes traitées ou en concevant des opérations sans état qui produisent des résultats cohérents lorsqu'elles sont exécutées plusieurs fois avec la même entrée.