Accordez à Amazon Pinpoint l'autorisation d'appeler la fonction Lambda - Amazon Pinpoint

Avis de fin de support : le 30 octobre 2026, le support d'Amazon Pinpoint AWS prendra fin. Après le 30 octobre 2026, vous ne pourrez plus accéder à la console Amazon Pinpoint ni aux ressources Amazon Pinpoint (points de terminaison, segments, campagnes, parcours et analytique). Pour plus d’informations, consultez Fin de la prise en charge d’Amazon Pinpoint. Remarque : en ce qui APIs concerne les SMS, la voix, le push mobile, l'OTP et la validation des numéros de téléphone ne sont pas concernés par cette modification et sont pris en charge par AWS la messagerie utilisateur final.

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.

Accordez à Amazon Pinpoint l'autorisation d'appeler la fonction Lambda

Vous pouvez utiliser le AWS Command Line Interface (AWS CLI) pour ajouter des autorisations à la politique de fonction Lambda attribuée à votre fonction Lambda. Pour autoriser Amazon Pinpoint à invoquer une fonction, utilisez la commande Lambda ajouter autorisation, comme illustré dans l'exemple suivant :

aws lambda add-permission \ --function-name myFunction \ --statement-id sid0 \ --action lambda:InvokeFunction \ --principal pinpoint.us-east-1.amazonaws.com \ --source-arn arn:aws:mobiletargeting:us-east-1:111122223333:apps/* --source-account 111122223333

Dans la commande précédente, procédez comme suit :

  • Remplacez myFunction par le nom de la fonction Lambda.

  • Remplacez us-east-1 par la AWS région dans laquelle vous utilisez Amazon Pinpoint.

  • Remplacez 111122223333 par votre ID de compte AWS .

Lorsque vous exécutez la commande add-permission de Lambda, celui-ci renvoie le résultat suivant :

{ "Statement": "{\"Sid\":\"sid\", \"Effect\":\"Allow\", \"Principal\":{\"Service\":\"pinpoint.us-east-1.amazonaws.com\"}, \"Action\":\"lambda:InvokeFunction\", \"Resource\":\"arn:aws:lambda:us-east-1:111122223333:function:myFunction\", \"Condition\": {\"ArnLike\": {\"AWS:SourceArn\": \"arn:aws:mobiletargeting:us-east-1:111122223333:apps/*\"}}, {\"StringEquals\": {\"AWS:SourceAccount\": \"111122223333\"}}} }

La valeur Statement est une version de chaîne JSON correspondant à l'instruction ajoutée à la stratégie de la fonction Lambda.

Restrictions supplémentaires concernant la stratégie d'exécution

Vous pouvez modifier la stratégie d'exécution en la limitant à un projet Amazon Pinpoint spécifique. Pour ce faire, remplacez le * dans l'exemple précédent par l'ID unique du projet. Vous pouvez restreindre davantage la stratégie en la limitant à une campagne spécifique. Par exemple, pour restreindre la stratégie de manière à autoriser uniquement une campagne avec l'ID de campagne 95fee4cd1d7f5cd67987c1436example dans un projet avec l'ID de projet dbaf6ec2226f0a9a8615e3ea5example, utilisez la valeur suivante pour l'attribut source-arn :

arn:aws:mobiletargeting:us-east-1:111122223333:apps/dbaf6ec2226f0a9a8615e3ea5example/campaigns/95fee4cd1d7f5cd67987c1436example
Note

Si vous limitez l'exécution de la fonction Lambda à une campagne spécifique, vous devez d'abord créer la fonction avec une stratégie moins restrictive. Ensuite, vous devez créer la campagne dans Amazon Pinpoint et choisir la fonction. Enfin, vous devez mettre à jour la stratégie d'exécution pour faire référence à la campagne spécifiée.