适用于 Apache Flink 的亚马逊托管服务(亚马逊 MSF)以前被称为适用于 Apache Flink 的亚马逊 Kinesis Data Analytics。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amazon MSF 中使用客户托管的密钥
在建立、管理和操作受 CMK 政策约束的 Amazon MSF 应用程序时,您需要考虑以下因素。
客户自主管理型密钥
这是关键政策和关键材料。您需要创建一个密钥,该密钥用于加密正在运行的应用程序存储和耐用应用程序存储中的应用程序状态。
应用程序生命周期操作员(API 调用者)
这是 I Operator
AM 用户或角色。操作员可以是人工,也可以是自动化人员,例如创建、部署和运行 Amazon MSF 应用程序的 CI/CD 管道。应用程序生命周期操作员可以是 IAM 角色或用户。
注意
密钥管理员和操作员可能是同一个人。在这种情况下,我们建议您始终使用不同的角色或用户。
应用程序
这是您创建的 Amazon MSF 应用程序。应用程序执行 (IAM) 角色无需更改即可使用 CMK。有关 Amazon MSF 中的 IAM 的更多信息,请参阅Amazon Managed Service for Apache Flink 的身份和访问管理。
策略之间的依赖关系
分配给 CMK 的密钥策略与定义应用程序生命周期操作员权限的 IAM 策略之间存在相互依赖关系。您可能需要按以下顺序创建它们:
-
在不定义 CMK 权限的 IAM 策略的情况下创建操作员 IAM 用户或角色。操作员使用 AOK 创建应用程序。
-
创建有权管理 KMS 密钥的密钥管理员。密钥管理员创建 CMK。密钥策略指的是操作员和管理员角色 ARNs以及应用程序 ARN。有关更多信息,请参阅 创建 KMS 密钥策略。
-
为操作员创建 IAM 策略,允许管理应用程序的 CMK。有关更多信息,请参阅 应用程序生命周期操作员(API 调用者)权限 。将新的 IAM 策略附加到操作员。操作员更新启用 CMK 的应用程序。有关更多信息,请参阅 更新现有应用程序以使用 CMK。
如果该应用程序不存在,请创建不带 CMK 的应用程序。
下图显示了如何在 Amazon MSF 中实现 CMK。

-
客户管理密钥 (CMK):包括密钥策略和密钥材料。
-
密钥管理员:
KeyAdmin
IAM 用户或角色。 -
应用程序生命周期操作员(API 调用方):操作员 IAM 用户或角色。
-
应用程序:附加了执行 (IAM) 角色。