Предоставьте ServerSideEncryption для загрузки файла из AWS S3

Я должен экспортировать данные из красного смещения в локальный путь, что ДОЛЖНО быть сделано с помощью PostgresOperator в Airflow. Таким образом, выполняя это в 2 этапа.

Шаг 1: Выполнена команда unload, которая экспортирует данные в корзину S3 с шифрованием AES256.

Шаг 2: Я загружаю данные из этой корзины s3 по локальному пути. Поскольку данные зашифрованы AES256, я не знаю, как их загрузить, предоставив "ServerSideEncryption"

Я загружаю файл, используя метод ниже.

s3_client.download_file(Bucket=bucket, Key=s3_key,Filename=local_path, ExtraArgs={'ServerSideEncryption':'AES256'})

И он выдает ошибку о том, что недопустимый ключ "ServerSideEncryption" и ключи ExtraArgs должны быть в ['VersionId', 'SSECustomerAlgorithm', 'SSECustomerKey', 'SSECustomerKeyMD5', 'RequestPayer'],

Если я не предоставлю ServerSideEncryption, ИТ botocore.exceptions.ClientError: An error occurred (404) when calling the HeadObject operation: Not Found

Пожалуйста, дайте мне знать, как я могу предоставить ServerSideEncryption для загрузки файла с S3 на локальный.

Благодарю.

0 ответов

Другие вопросы по тегам