0
votes

Masquer les variables d'environnement de la console AWS Lambda

J'ai des fonctions Lambda qui utilise des variables d'environnement. Je comprends que nous pouvons utiliser AWS KMS pour les chiffrer, puis de la console AWS, ils ne seront pas visibles.

Dans mon cas, l'utilisation de KMS n'est pas possible, alors je me demandais s'il y a une autre façon, probablement en limitant au niveau IAM afin qu'un utilisateur ne soit pas vu variables env.

J'ai déjà essayé de supprimer getfonction et getfonctionconfiguration de la stratégie. Cela fonctionne, mais le problème est que l'utilisateur n'est pas en mesure de voir d'autres choses car maintenant getfonctionconfiguration n'est pas autorisé.

Y a-t-il des paramètres d'autorisation de grain fins qui ne peuvent cacher que des variables env de la console AWS Lambda?

Merci d'avance.


1 commentaires

Modifiez les variables d'environnement afin que, au lieu de valeurs, ce sont des clés dans le magasin de paramètres ou le gestionnaire de secrets. Ensuite, donnez la permission de la fonction IAM de la fonction Lambda pour lire les secrets sous-jacents, tout en ne la donnant pas à vos utilisateurs afin qu'ils ne puissent pas récupérer les secrets.


3 Réponses :


2
votes

La réponse courte est non. Comme vous l'avez souligné la solution, vous devez utiliser KMS pour chiffrer la variable, puis la déchiffrer dans votre code.


0 commentaires

4
votes

Au niveau de la Lambda, j'ai peur qu'il n'y ait aucun moyen de mettre en œuvre une sorte de RBAC pour une visibilité variable d'environnement dans la console.

Si vous avez accès à SSM Parameter Store , cela aidera à résoudre votre problème.

En stockant les variables d'environnement à l'intérieur du SSM, vous pouvez implémenter un contrôle d'accès basé sur IAM sur chaque paramètre par le chemin que vous les placez. Cela vous donnera un emplacement centralisé pour gérer vos paramètres pour votre Lambdas et aider à minimiser les changements de code.

Comment stocker vos secrets AWS Lambda - Medium décrit un scénario similaire et comment utiliser efficacement SSM avec Lambda.


0 commentaires

0
votes

En tant que réponse mise à jour, il existe maintenant un moyen de réaliser:

https://aws.amazon.com/premiumsupport/knowledge-center/lambda-environment-variables-iam-access/

L'idée est de Utilisez KMS avec une clé de clientèle client et une stratégie qui refuser des actions KMS xxx

ceci devrait empêcher vos utilisateurs IAM de voir des variables env.


0 commentaires