You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否用同一客户托管密钥加密两个DynamoDB表?是否为最佳实践?

关于同一KMS客户托管密钥加密多DynamoDB表的问题解答

1. 是否可行?

完全可以。你提供的CloudFormation配置是合法有效的,AWS KMS允许同一个客户托管密钥(CMK)用于加密多个AWS资源,包括不同的DynamoDB表。只要该CMK的权限策略允许DynamoDB服务对其进行加密/解密操作,两张表都能正常启用服务器端加密(SSE)。

2. 是否属于最佳实践?

这得结合你的安全需求和管理策略来判断:

  • 适合共用密钥的场景:
    • 多张表属于同一业务模块、安全级别一致,共用密钥能简化管理——减少密钥数量,降低轮换、权限维护的工作量。
    • 中小规模架构或资源生命周期完全同步的表,共用密钥能减少运维成本。
  • 建议使用独立密钥的场景:
    • 不同表的敏感程度差异大(比如一张存普通业务数据,一张存用户身份证、银行卡等隐私数据),独立密钥能实现数据隔离,遵循最小权限原则:万一某个密钥出问题,影响范围只会局限在关联表。
    • 不同表有不同合规要求(比如不同的密钥轮换周期、审计日志需求),独立密钥更容易满足差异化的合规标准。

额外提醒:使用共用CMK时,务必配置好密钥的权限策略,只允许必要的角色或服务访问,避免过度授权;同时开启CloudTrail审计日志,追踪密钥的使用情况,便于排查问题。

你提供的CloudFormation配置代码:

DynamoDbTableKmsKey:
    Type: AWS::KMS::Key

Table1:
    Type: AWS::DynamoDB::Table
    Properties:
      SSESpecification:
        SSEEnabled: True
        SSEType: KMS
        KMSMasterKeyId: !Ref DynamoDbTableKmsKey

Table2:
    Type: AWS::DynamoDB::Table
    Properties:
      SSESpecification:
        SSEEnabled: True
        SSEType: KMS
        KMSMasterKeyId: !Ref DynamoDbTableKmsKey

内容的提问来源于stack exchange,提问作者Mondy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 00:52:38