У меня есть какой-то Python, который может запросить предварительно назначенный URL-адрес POST для загрузки объекта в корзину S3. Он работает, выполняя его локально, под моим пользователем IAM с правами администратора, и я могу загружать вещи в корзину, используя Postman и cURL. Однако при попытке запустить тот же код в Lambda выдается «Идентификатор ключа доступа AWS, который вы указали, не существует в наших записях».
Единственное отличие состоит в том, что функция Lambda работает без прав администратора (но у нее есть политика, позволяющая запускать любое действие S3 в корзине) и использует другую (более старую) версию Boto3.
Это код, который я пытаюсь использовать: https://boto3.amazonaws.com/v1/documentation/api/latest/guide/s3-presigned-urls.html#generating-a-presigned-url-to-upload-a-file
Я пытался использовать детали, возвращаемые функцией Lambda, точно так же, как я использую детали, возвращаемые локально, но детали лямбды не работают.