DynamoDB 加密吗?

加密。所有 DynamoDB 数据默认进行静态加密,使用存储在 AWS Key Management Service(KMS)中的加密密钥,且加密无法关闭。你选择密钥类型——AWS 拥有的密钥(默认,免费)、AWS 托管的密钥,或客户托管的密钥——而传输中的数据由 HTTPS/TLS 保护。

静态加密涵盖什么

加密适用于加密表存储在持久介质上的一切:表本身(包括其主键)、本地和全局二级索引、流、全局表以及备份。请注意,如果你的表有排序键,一些标记范围边界的排序键会以明文形式存储在表元数据中。

三种密钥选项

  • AWS 拥有的密钥——默认项。由 DynamoDB 拥有和管理,不产生额外费用。
  • AWS 托管的密钥——存储在你的账户中并由 AWS KMS 管理(会产生 KMS 费用)。
  • 客户托管的密钥——由你创建、拥有和轮换,对访问拥有完全控制(会产生 KMS 费用)。

你可以随时通过控制台、CLI 或 API 在各密钥类型之间切换。

对你的应用是透明的

DynamoDB 在你读取时透明地解密数据。使用加密表无需更改任何代码,查询照常运行,延迟保持在相同的个位数毫秒级范围内。若要在各个属性值离开你的应用之前对其进行端到端保护,AWS 还通过 AWS Database Encryption SDK 提供客户端加密。

深入了解

备份也是加密的——在备份与 PITR 指南中了解它们如何工作,用定价计算器估算表成本(KMS 另行计费),并下载 DynoTable 来浏览你的加密表——解密由 AWS 在数据到达任何客户端之前完成。

参考资料

最后核实于 2026-07-13,依据上方所链接的 AWS 官方文档。

无需控制台即可使用 DynamoDB

DynoTable 是面向 DynamoDB 的快速桌面客户端 —— 浏览表、运行 SQL 风格的查询,并在本地编辑项。