Я пытаюсь отправлять сообщения в свою AWS Lambda Function из AWS Pinpoint через пользовательский канал, как описано здесь
Моя проблема заключается в предоставлении AWS Pinpoint разрешения на вызов моей лямбда-функции. Команда AWS CLI, указанная в документации для предоставления разрешения, не работает. Когда я выполняю команду aws lambda add-permission
из интерфейса командной строки AWS, как описано в документации, я получаю следующую ошибку:
no matches found: arn:aws:mobiletargeting:us-east-1:<account-id>:apps/*
Результат не изменится, если я изменю ARN на любой из следующих:
arn:aws:mobiletargeting:us-east-1:<account-id>:apps/<pinpoint-app-id>/*
arn:aws:mobiletargeting:us-east-1:<account-id>:apps/<pinpoint-app-id>/campaigns/*
arn:aws:mobiletargeting:us-east-1:<account-id>:/apps/<pinpoint-app-id>/*
arn:aws:mobiletargeting:us-east-1:<account-id>:/apps/<pinpoint-app-id>/campaigns/*
Я попробовал то же самое с AWS Cloudformation вместо AWS CLI, мне удалось предоставить AWS Pinpoint разрешение на вызов моей лямбда-функции. По крайней мере, политика на основе ресурсов появилась на вкладке «Разрешения» в моей консоли AWS Lambda Function. Исходное условие типа ARN - arn:aws:mobiletargeting:us-east-1:<account-id>:apps/<pinpoint-app-id>/*
Но когда я пытаюсь создать кампанию в том же приложении (т.е. проекте), я получаю следующее сообщение об ошибке:
"Amazon Pinpoint couldn’t invoke the Lambda function that you specified for custom delivery. Verify that a function policy is assigned to the function and that Amazon Pinpoint is authorized to invoke the function."
Я пробовал разные условия типа SourceArn, включая следующие, но результат тот же:
arn:aws:mobiletargeting:us-east-1:<account-id>:apps/<pinpoint-app-id>/*
arn:aws:mobiletargeting:us-east-1:<account-id>:apps/<pinpoint-app-id>/campaigns/*
arn:aws:mobiletargeting:us-east-1:<account-id>:apps/*
arn:aws:mobiletargeting:us-east-1:<account-id>:*
arn:aws:mobiletargeting:us-east-1:<account-id>:/apps/*
Не могу понять, в чем проблема. Буду очень признателен за любую идею о том, что мне не хватает.
Заранее спасибо!