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.
Règles Lambda personnalisées (exemple Amazon EC2)
Cette procédure vous guide tout au long du processus de création d'une règle Lambda personnalisée qui évalue si chacune de vos EC2 instances est du type t2.micro. AWS Config exécutera des évaluations basées sur les événements pour cette règle, ce qui signifie qu'il vérifiera les configurations de votre instance chaque fois qu'un changement de configuration est AWS Config détecté dans une instance. AWS Config signalera les instances t2.micro comme conformes et toutes les autres instances comme non conformes. L'état de conformité apparait dans la console AWS Config .
Pour obtenir les meilleurs résultats avec cette procédure, vous devez avoir une ou plusieurs EC2 instances dans votre Compte AWS. Vos instances doivent inclure une combinaison d'au moins une instance t2.micro et d'autres types.
Pour créer cette règle, vous devez d'abord créer une AWS Lambda fonction en personnalisant un plan dans la AWS Lambda console. Ensuite, vous allez créer une règle Lambda personnalisée dans AWS Config, et vous associerez la règle à la fonction.
Étape 1 : Création d'une AWS Lambda fonction pour une règle de configuration personnalisée
Connectez-vous à la AWS Lambda console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/lambda/
. -
Dans le AWS Management Console menu, vérifiez que le sélecteur de région est défini sur une région compatible avec les AWS Config règles. Pour obtenir la liste des régions prises en charge, consultez la section Régions et points de terminaison AWS Config dans le Référence générale d'Amazon Web Services.
-
Dans la AWS Lambda console, choisissez Create a Lambda function.
-
Choisissez Utiliser un plan. Dans la barre de recherche, saisissez config-rule-change-triggered. Sélectionnez le plan dans les résultats de filtre, puis choisissez Configurer.
-
Sur la page Configure triggers (Configurer les déclencheurs), choisissez Next (Suivant).
-
Sur la page Basic information, effectuez les étapes suivantes :
-
Pour Nom de la fonction, entrez
InstanceTypeCheck
. -
Pour le rôle d'exécution, choisissez Créer un nouveau rôle à partir des modèles de AWS politique.
-
Pour Runtime, conservez Node.js.
-
Saisissez un nom dans le champ Nom de rôle.
-
Pour Modèles de stratégie, choisissez Autorisations de règles AWS Config .
-
Conservez le code préconfiguré pour la Fonction de code de fonction Lambda. Le code Node.js de votre fonction est fourni dans l'éditeur de code. Pour cette procédure, vous n'avez pas besoin de changer le code.
-
Vérifiez les détails, puis choisissez Créer une fonction. La AWS Lambda console affiche votre fonction.
-
-
Pour vérifier que votre fonction est configurée correctement, testez-la avec les étapes ci-dessous :
-
Choisissez Test dans le menu sous Présentation de la fonction, puis sélectionnez Configurer l'événement de test.
-
Dans Modèle, choisissez Notification de changement d'élément de configuration AWS Config .
-
Pour Name (Nom), tapez un nom.
-
Choisissez Test. AWS Lambda teste votre fonction avec l'exemple d'événement. Si votre fonction est traitée comme prévu, un message d'erreur comme le suivant s'affiche sous Résultat de l'exécution :
{ "errorType": "InvalidResultTokenException," "errorMessage": "Result Token provided is invalid", . . .
Ceci
InvalidResultTokenException
est attendu car votre fonction ne s'exécute correctement que lorsqu'elle reçoit un jeton de résultat de AWS Config. Le jeton de résultats identifie la règle AWS Config et l'événement qui a provoqué l'évaluation. Ensuite, il associe une évaluation à une règle. Cette exception indique que votre fonction a les autorisations nécessaires pour envoyer les résultats à AWS Config. Sinon, le message d'erreur suivant s'affiche :not authorized to perform: config:PutEvaluations
. Si cette erreur survient, mettez à jour le rôle que vous avez attribué à votre fonction pour autoriser l'actionconfig:PutEvaluations
et testez de nouveau votre fonction.
-
Étape 2 : Création d'une règle Lambda personnalisée pour évaluer les instances Amazon EC2
-
Ouvrez la AWS Config console à l'adresse https://console.aws.amazon.com/config/
. -
Dans le AWS Management Console menu, vérifiez que le sélecteur de région est défini sur la même région que celle dans laquelle vous avez créé la AWS Lambda fonction pour votre règle Lambda personnalisée.
-
Sur la page Règles, choisissez Ajouter une règle.
-
Sur la page Spécifier le type de règle, choisissez Créer une règle personnalisée.
-
Sur la page Configure rule (Configurer une règle), complétez les étapes suivantes :
-
Pour Nom, tapez
InstanceTypesAreT2micro
. -
Pour Description, saisissez
Evaluates whether EC2 instances are the t2.micro type
. -
Pour ARN de fonction AWS Lambda , spécifiez l'ARN qu' AWS Lambda a assigné à votre fonction.
Note
L'ARN que vous spécifiez à cette étape ne doit pas inclure le qualificateur
$LATEST
. Vous pouvez spécifier un ARN sans qualificatif de version ou avec un autre qualificatif$LATEST
. AWS Lambda prend en charge le versionnement des fonctions, et chaque version se voit attribuer un ARN avec un qualificatif. AWS Lambda utilise le$LATEST
qualificatif correspondant à la dernière version. -
Pour Type de déclencheur, choisissez Lors de changements de configuration.
-
Pour Scope of changes (Portée des modifications), choisissez Ressources.
-
Pour les ressources, choisissez AWS EC2Instance dans la liste déroulante des types de ressources.
-
Dans la section Paramètres, vous devez spécifier le paramètre de règle évalué par votre AWS Lambda fonction et la valeur souhaitée. La fonction de cette procédure évalue le paramètre
desiredInstanceType
.Pour Clé, tapez
desiredInstanceType
. Pour Valeur, tapezt2.micro
.
-
-
Choisissez Suivant. Sur la page Vérifier et créer, vérifiez les détails de votre règle et choisissez Ajouter une fonction de règle. Votre nouvelle règle s'affiche sur la page Règles.
La conformité s'affichera Évaluer... jusqu'à ce qu'il AWS Config reçoive les résultats d'évaluation de votre AWS Lambda fonction. Si la règle et la fonction fonctionnent comme prévu, un résumé des résultats s'affiche au bout de quelques minutes. Par exemple, le résultat 2 noncompliant resource(s) indique que 2 de vos instances ne sont pas des instances t2.micro et le résultat Conforme indique que toutes les instances sont de type t2.micro. Vous pouvez mettre à jour les résultats avec le bouton Refresh.
Si la règle ou la fonction ne fonctionnent pas comme prévu, vous pouvez voir l'un des messages suivants pour Conformité :
-
Aucun résultat n'a été signalé. Vos ressources ont AWS Config été évaluées par rapport à la règle. Cette règle ne s'appliquait à aucune des ressources AWS figurant dans sa portée, les ressources spécifiées ou les résultats de l'évaluation ont été supprimés. Pour obtenir les résultats de l'évaluation, mettez à jour la règle, modifiez sa portée ou choisissez Re-evaluate (Réévaluer).
Vérifiez que le champ d'application comprend AWS EC2 Instance pour Ressources et réessayez.
-
Aucune ressource dans le champ d'application : AWS Config impossible d'évaluer vos AWS ressources enregistrées par rapport à cette règle car aucune de vos ressources n'entre dans le champ d'application de la règle. Pour obtenir les résultats de l'évaluation, modifiez la règle et sa portée, ou ajoutez des ressources AWS Config à enregistrer à l'aide de la page Paramètres.
Vérifiez qu'il AWS Config s'agit d' EC2 instances d'enregistrement.
-
Evaluations failed (Échec des évaluations) - pour obtenir des informations susceptibles de vous aider à déterminer le problème, choisissez le nom de la règle pour ouvrir sa page de détails et voir le message d'erreur.
-
Si votre règle fonctionne correctement et AWS Config fournit des résultats d'évaluation, vous pouvez découvrir quelles conditions affectent le statut de conformité de votre règle. Vous pouvez découvrir quelles ressources sont non conformes, le cas échéant, et pourquoi. Pour de plus amples informations, veuillez consulter Afficher les informations de conformité et les résultats d'évaluation de vos AWS ressources avec AWS Config.