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.
Vous pouvez désormais utiliser une AWS Lambda fonction d'un autre AWS compte comme backend d'intégration d'API. Chaque compte peut se trouver dans n’importe quelle région où Amazon API Gateway est disponible. Il est ainsi facile de gérer et de partager de manière centralisée les fonctions du backend Lambda entre plusieurs. APIs
Dans cette section, nous montrons comment configurer l’intégration de proxy Lambda entre comptes à l’aide de la console Amazon API Gateway.
Création d’une API pour l’intégration Lambda entre comptes d’API Gateway
Pour créer une API
-
Connectez-vous à la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway.
-
Si vous utilisez API Gateway pour la première fois, vous voyez une page qui vous présente les fonctions du service. Sous REST API (API REST), choisissez Build (Création). Lorsque la fenêtre contextuelle Create Example API (Créer API exemple) s’affiche, cliquez sur OK.
Si ce n’est pas la première fois que vous utilisez API Gateway, choisissez Create API (Créer une API). Sous REST API (API REST), choisissez Build (Création).
Sous API name (Nom de l’API), saisissez
CrossAccountLambdaAPI
.(Facultatif) Sous Description, entrez une description.
Laissez Type de point de terminaison d’API défini sur Régional.
Sélectionnez Create API (Créer une API).
Création d’une fonction d’intégration Lambda dans un autre compte
Maintenant, vous allez créer une fonction Lambda dans un compte différent de celui dans lequel vous avez créé l’exemple d’API.
Création d’une fonction Lambda dans un autre compte
-
Connectez-vous à la console Lambda dans un compte différent de celui dans lequel vous avez créé votre API Amazon API Gateway.
-
Sélectionnez Create function (Créer une fonction).
-
Choisissez Créer à partir de zéro.
-
Sous Author from scratch, effectuez les étapes suivantes :
-
Pour Nom de la fonction, entrez un nom.
-
Dans la liste déroulante Exécution, choisissez un environnement d’exécution Node.js pris en charge.
Pour Architecture, conservez le paramètre par défaut.
-
Sous Permissions (Autorisations), développez Choose or create an execution role (Choisir ou créer un rôle d’exécution). Vous pouvez créer un rôle ou choisir un rôle existant.
-
Sélectionnez Create function pour continuer.
-
-
Faites défiler l’écran vers le bas jusqu’au volet Function code (Code de fonction).
-
Copiez et collez l’implémentation de la fonction Node.js depuis Didacticiel : création d’une API REST avec une intégration de proxy Lambda.
-
Choisissez Deploy (Déployer).
-
Notez l’ARN complet de votre fonction (dans le coin supérieur droit du volet de la fonction Lambda). Vous en aurez besoin lors de la création de votre intégration Lambda entre comptes.
Configuration de l’intégration Lambda entre comptes
Une fois que vous disposez d’une fonction d’intégration Lambda dans un autre compte, vous pouvez utiliser la console API Gateway pour l’ajouter à votre API dans votre premier compte.
Note
Si vous configurez un mécanisme d’autorisation inter-compte entre régions, le sourceArn
qui est ajouté à la fonction cible doit utiliser la région de la fonction, pas la région de l’API.
Une fois que vous avez créé une API, vous créez une ressource. En règle générale, les ressources API sont organisées dans une arborescence des ressources selon la logique de l’application. Pour cet exemple, vous créez une ressource /helloworld.
Pour créer une ressource
Choisissez Créer une ressource.
Maintenez Ressource proxy désactivée.
Conservez Chemin de la ressource sous la forme
/
.Sous Resource Name (Nom de la ressource), entrez
helloworld
.Maintenez CORS (Partage des ressources entre origines multiples) désactivé.
Choisissez Créer une ressource.
Après avoir créé une ressource, vous créez une méthode GET
. Vous intégrez la méthode GET
avec une fonction Lambda dans un autre compte.
Pour créer une méthode GET
Sélectionnez la ressource /helloworld, puis choisissez Créer une méthode.
Pour Type de méthode, sélectionnez GET.
Pour Type d’intégration, sélectionnez Fonction Lambda.
Activez Intégration de proxy Lambda.
Pour la fonction Lambda, entrez l’ARN complet de votre fonction Lambda à l’étape 1.
Dans la console Lambda, vous trouverez l’ARN de votre fonction dans le coin supérieur droit de la fenêtre de la console.
-
Lorsque vous entrez l’ARN, une chaîne de commande
aws lambda add-permission
apparaît. Cette politique permet d’accorder à votre premier compte l’accès à la fonction Lambda de votre second compte. Copiez et collez la chaîne deaws lambda add-permission
commande dans une AWS CLI fenêtre configurée pour votre deuxième compte. Choisissez Créer une méthode.
Vous pouvez afficher la politique de mise à jour de votre fonction dans la console Lambda.
(Facultatif) Pour consulter votre politique mise à jour
-
Connectez-vous à la AWS Lambda console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/lambda/
. -
Choisissez votre fonction Lambda.
-
Choisissez Permissions.
Vous devriez voir une politique
Allow
avec une clauseCondition
dans laquelle l’AWS:SourceArn
est l’ARN de la méthodeGET
de votre API.