如何使用 Python Jupyter Notebook 从带有 KMS 加密的 S3 读取文件

问题描述

我正在尝试使用 spark.read.csv 从 S3 读取文件。但是,对于使用 KMS 加密的文件,我无法读取该文件。我有可用的 KMS 密钥。如何在配置时在 spark 会话中指定它们。

解决方法

对于 SSE-KMS,它是自动的:当文件被加密时,密钥 ID 与对象一起存储,为了解密文件,S3 端它直接与 KMS 对话以解密(如果您可以读取密钥)>

对于客户端,AWS EMR 确实支持这一点。开源 S3A 连接器没有,因为多年来 S3 客户端加密总是填充数据,所以事情会崩溃。现在已经改变了,但没有人(2021 年 1 月)提供补丁

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...