本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
多区域密钥的工作原理
首先在 AWS KMS 支持的 AWS 区域 中创建一个对称或非对称多区域主键,如美国东部(弗吉尼亚州北部)区域。只有在创建密钥时,才能决定密钥是单区域还是多区域;以后不能更改此属性。与任何 KMS 密钥一样,您可以为多区域密钥设置密钥策略,并且可以创建授权,并添加别名和标签以进行分类和授权。(这些是独立属性,不与其他密钥共享或同步。) 您可以在加密操作中使用多区域主键进行加密或签名。
您可以在 AWS KMS 控制台中或使用 MultiRegion
参数被设置为 true
的 CreateKey API 创建多区域主键。请注意,多区域密钥具有一个以 mrk-
开头的独特密钥 ID。您可以使用 mrk-
前缀以编程方式识别 MRK。
如果您选择,您可以复制多区域主键到相同 AWS分区中的一个或多个不同的 AWS 区域 中,例如欧洲(爱尔兰)区域。当您这样做时,AWS KMS 会使用与主键相同的密钥 ID 和其他共享属性在指定区域中创建一个副本密钥。然后,它将密钥材料安全地跨区域边界传输,并将其与目标区域中的新 KMS 密钥相关联,一切都在 AWS KMS 中进行。结果会产生两个相关的多区域密钥(主键和副本密钥),它们可以互换使用。
您可以在 AWS KMS 控制台中或使用 ReplicateKey API 创建多区域副本密钥。
由此产生的多区域副本密钥是一个功能齐全的 KMS 密钥,具有与主键相同的共享属性。在所有其他方面,它是一个独立的 KMS 密钥,具有自己的说明、密钥策略、授权、别名和标签。启用或禁用多区域密钥对相关的多区域密钥没有影响。您可以在加密操作中独立使用主密钥和副本密钥,也可以协调它们的使用。例如,您可以使用美国东部(弗吉尼亚北部)区域的主键对数据进行加密,将数据移动到欧洲(爱尔兰)区域,然后使用副本密钥解密数据。
相关的多区域密钥具有相同的密钥 ID。它们的密钥 ARN(Amazon Resource Name)仅在 Region(区域)字段中有所不同。例如,多区域主键和副本密钥可能具有以下示例密钥 ARN。密钥 ID(密钥 ARN 中的最后一个元素)是相同的。两个密钥都具有多区域密钥的独特密钥 ID,该 ID 以 mrk- 开头。
Primary key: arn:aws:kms:
us-east-1
:111122223333:key/mrk-1234abcd12ab34cd56ef12345678990ab Replica key: arn:aws:kms:eu-west-1
:111122223333:key/mrk-1234abcd12ab34cd56ef12345678990ab
为了实现互操作性,需要具有相同的密钥 ID。加密时,AWS KMS 将 KMS 密钥的密钥 ID 绑定到密文,因此只能使用该 KMS 密钥或具有相同密钥 ID 的 KMS 密钥来解密密文。此功能还使相关的多区域密钥易于识别,并且可以更轻松地互换使用它们。例如,在应用程序中使用它们时,您可以通过它们的共享密钥 ID 来引用相关的多区域密钥。然后,在必要时,指定区域或 ARN 以区分它们。
随着数据需求的变化,您可以将主键复制到相同分区中的其他 AWS 区域,如美国西部(俄勒冈)和亚太地区(悉尼)区域。结果会产生四个具有相同的密材料和密钥 ID 的相关多区域密钥,如下图所示。您可以独立管理密钥。您可以独立使用它们,也可以以协调的方式使用它们。例如,您可以在亚太地区(悉尼)区域使用副本密钥对数据进行加密,将数据移动到美国西部(俄勒冈)区域,然后在美国西部(俄勒冈)区域使用副本密钥对其进行解密。
多区域密钥的其他注意事项包括以下内容。
同步共享属性 — 如果多区域密钥的共享属性发生更改,AWS KMS 会自动同步从主键到其所有副本密钥的更改。您不能请求或强制执行共享属性的同步。AWS KMS 会为您检测并同步所有更改。但是,您可以使用 CloudTrail 日志中的 SynchronizeMultiRegionKey 事件审计同步。
例如,如果在对称多区域主键上启用自动密钥轮替,AWS KMS 会将该设置复制到其所有副本密钥中。轮换密钥材料时,轮换将在所有相关的多区域密钥之间同步,因此它们继续具有相同的当前密钥材料,并可访问所有旧版本的密钥材料。如果创建新的副本密钥,则该密钥具有与所有相关多区域密钥相同的当前密钥材料,并可访问密钥材料的所有以前版本。有关详细信息,请参阅Rotating multi-Region keys。
更改主键 — 每组多区域密钥必须只有一个主键。主键是唯一可以复制的密钥。它也是其副本密钥的共享属性的来源。但是,您可以将主键更改为副本密钥,并将其中一个副本密钥提升为主键。您可以执行此操作,以便从特定区域删除多区域主键,或将主键定位在离项目管理员更近的区域中。有关详细信息,请参阅更改一组多区域密钥中的主密钥。
删除多区域密钥 — 与所有 KMS 密钥一样,您必须在 AWS KMS 将其删除之前计划多区域密钥的删除。密钥处于待删除状态时,您无法在任何加密操作中使用它。然而,AWS KMS 将不会删除多区域主键,直到该主键的所有副本密钥都被删除。有关详细信息,请参阅Deleting multi-Region keys。