Загрузить файл CSV из S3 в красное смещение с помощью лямбды - PullRequest
0 голосов
/ 01 июля 2019

Я новичок в AWS и немного автоматизировал чтение файла из S3 в красное смещение с помощью лямбды

Мне нужна помощь для создания лямбда-функции для копирования файла в таблицу красных смещений всякий раз, когда это помещается в корзину S3.

Я создал скрипт phython для чтения содержимого файла, который загружен в корзину s3.Я получаю сообщение об ошибке ниже.

An error occurred (AccessDenied) when calling the GetObject operation: Access Denied: ClientError
Traceback (most recent call last):
File "/var/task/lambda_function.py", line 12, in lambda_handler
fileObj = s3.get_object(Bucket=bucketname, Key=filename)
File "/var/runtime/botocore/client.py", line 314, in _api_call
return self._make_api_call(operation_name, kwargs)
File "/var/runtime/botocore/client.py", line 612, in _make_api_call
raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (AccessDenied) when calling the GetObject operation: Access Denied

Сценарий Phython: импорт boto3

def lambda_handler (событие, контекст): "" "Чтение файла из s3 по триггеру." "" S3 = boto3.клиент ("s3") if event: file_obj = event ["Records"] [0] имя_катета = str (file_obj ['s3'] ['bucket'] ['name']) filename = str (file_obj ['s3')] ['object'] ['key']) print ("Filename:", filename) fileObj = s3.get_object (Bucket = bucketname, Key = filename) file_content = fileObj ["Body"]. read (). decode ('utf-8') print (file_content) вернуть 'Спасибо'

...