amazon-web-services - 使用 boto2 从加密桶中获取对象?
问题描述
是否可以使用 boto 2 从加密的 S3 存储桶中获取文件?我正在处理一个在多个地方使用 S3 并且必须读取/写入加密 S3 存储桶的项目。我想暂时做一个尽可能小的改变来支持加密。
解决方案
加密实际上是在对象级别工作,而不是存储桶。
有几种方法可以使用加密。如果它是使用带有 Amazon S3 托管加密密钥 (SSE-S3) 的服务器端加密来保护数据,那么只要您的应用程序有权访问该对象,那么它将被自动解密。(应用程序甚至不会注意到它已被加密!)
如果它使用带有 AWS KMS 托管密钥 (SSE-KMS) 的服务器端加密来保护数据,则应用程序还需要足够的权限才能在 KMS 中使用密钥。该对象将被自动解密,但它需要使用密钥的权限。
如果应用使用带有客户提供的加密密钥 (SSE-C) 的服务器端加密来保护数据,则应用在尝试访问对象时必须提供加密密钥。
最后,如果它是使用客户端加密保护数据,那么应用程序将完全负责加密/解密。
您的数据很可能正在使用带有 Amazon S3 托管加密密钥 (SSE-S3) 的服务器端加密。如果是这样,那么您的应用程序无需执行任何操作——这一切都将由 Amazon S3 自动处理。
推荐阅读
- node.js - node.js - 如何将变量除以数组中的数字
- r - 如何在 R 中为“游侠”设置数据。错误:列中缺少数据
- c# - 为什么启动 Azure Function 时没有使用 startup.cs 文件?
- javascript - 如何让这个 jQuery scrollTop() 工作......?
- node.js - 无法使用 VUE 公共文件夹中的 png 图像
- python - Selenium,我执行时如何不打开隐身模式
- javascript - Flow 抱怨无类型导入
- java - 限制类及其成员的可访问性是否是更安全代码的有效做法?
- swiftui - 按下按钮后如何创建指令提示?
- c - SDL_GetError() 在 macOS 上返回一个未记录的错误