1

Mon problème

Je suis en train d'écrire une fonction Lambda en utilisant la Serverless framework.Octroi de l'accès CloudWatch à une fonction lambda déployée en utilisant le cadre Serverless

La fonction est appelée par une requête HTTP. Il analyse les paramètres de la requête, récupère certains journaux d'un groupe CloudWatch et diffuse selon les paramètres et les réponses avec un résumé des journaux.

Je voudrais accorder à CloudWatch un accès en lecture à la fonction Lambda en utilisant le fichier de configuration sans serveur.

code

La définition de la fonction (serverless.yml) est assez basique:

service: adam-test-sls 
provider: 
    name: aws 
    runtime: nodejs6.10 
    region: eu-central-1 
functions: 
    hello: 
    handler: handler.hello 
    events: 
     - http: 
      path: hello 
      method: get 

Qu'ai-je essayé

  • Recherche dans les forums cadre serverless
  • Google-fu
  • Documentation AWS CloudFormation (Le ser cadre verless crée des fichiers CloudFormation de sa configuration YAML)

Ma question

Comment accorder des autorisations de lecture (et/ou écriture) qui permettront cette fonction Lambda pour accéder aux journaux CloudWatch spécifiques?

Répondre

2

Serverless vous permet de définir un rôle par défaut IAM pour toutes les fonctions (qui doit avoir accès CloudWatch par défaut)

également par défaut, vos fonctions Lambda ont la permission de créer et écrire dans les journaux CloudWatch.

Vous pouvez également affiner le rôle IAM pour toutes les fonctions, ou même de fournir des permissions à grains fins pour chaque fonction en utilisant l'attribut role.

The reference is here

+0

Je peux donc utiliser soit un rôle existant ou définir un dans le fichier. Dans ce dernier cas, et en supposant que je veuille plus que des journaux CloudWatch - où puis-je trouver une documentation appropriée concernant le mappage entre 'serverless.yaml' et CloudFormation? –

+1

Il n'y a pas de magie. La syntaxe d'une définition de rôle le fichier 'serverless.yaml' est exactement la même que la syntaxe YAML CloudFormation pour IAM (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role .html). Aucune transformation n'est effectuée par le framework Serverless. – Pierre

+1

Parfait. Merci! –