Назад | Перейти на главную страницу

AWS lambda add-permission --source-arn weirdness

я следую это руководство о настройке лямбда-функции для подписки на события журнала. На шаге 5 вам нужно «Предоставить CloudWatch Logs разрешение на выполнение вашей функции» следующим образом:

aws lambda add-permission \
    --function-name "helloworld" \
    --statement-id "helloworld" \
    --principal "logs.region.amazonaws.com" \
    --action "lambda:InvokeFunction" \
    --source-arn "arn:aws:logs:region:123456789123:log-group:TestLambda:*" \
    --source-account "123456789012"

Это прекрасно работает.

Теперь, согласно документы то --source-arn аргумент aws lambda add-permission не является обязательным. Но если я его не предоставлю, когда я захожу на страницу конфигурации лямбда-функции на веб-сайте AWS, подписка не отображается как зарегистрированная (см. Первый снимок экрана ниже). Подписка фактически зарегистрирована и может запускать лямбду. Я могу подтвердить, удаляю ли я разрешение, и добавляю его повторно с --source-arn подписка отображается как зарегистрированная (второй снимок экрана).

Думаю, это мелочь, но зачем --source-arn аргумент к add-permission имеют какое-либо отношение к тому, почему / почему подписка не отображается в пользовательском интерфейсе? Тем более, что предоставляете ли вы --source-arn разрешения по-прежнему достаточно для выполнения лямбды.

(Примечание: после написания этого вопроса Q это просто кажется ошибкой. Но я собираюсь оставить это, чтобы я мог сослаться на него в большом отчете, ожидая ответа).