使用Platform UI在AWS中设置并配置客户管理的密钥
使用本指南可通过Platform UI为AWS上托管的Platform实例启用客户管理的密钥(CMK)。
更新AWS密钥策略以将该密钥与Experience Platform集成
要将AWS密钥与Experience Platform集成,必须在KMS工作区的 Key Policy 部分中编辑JSON。 默认密钥策略类似于下面的JSON。
{
"Id": "key-consolepolicy-3",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Enable IAM User Permissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::123464903283:root" // this is a mock AWS Principal ID, your ID will differ
},
"Action": "kms:*",
"Resource": "*"
}
]
}
在上述示例中,同一帐户(Principal.AWS
)中的所有资源("Resource": "*"
)都可以访问该密钥。 此策略允许帐户中的服务执行加密和解密操作,但仅限于指定的帐户。 要授予您的Platform单租户帐户访问此密钥的权限,请向默认AWS策略添加新语句。 您可以从Platform UI获取所需的JSON策略,并将其应用于AWS KMS密钥,以与Adobe Experience Platform建立安全连接。
在Platform UI中,转到左侧导航边栏中的 管理 部分,然后选择 加密。 在加密配置工作区中,选择客户托管密钥卡片中的 配置。
出现客户托管密钥配置。 从客户管理的密钥 加密配置中显示的CMK KMS策略复制statement
对象。
接下来,返回到AWS KMS工作区并更新下面显示的密钥策略。
将平台加密配置工作区中的四个语句添加到默认策略中,如下所示: Enable IAM User Permissions
、CJA Flow IAM User Permissions
、CJA Integrity IAM User Permissions
、CJA Oberon IAM User Permissions
。
{
"Version": "2012-10-17",
"Id": "key-consolepolicy",
"Statement": [
{
"Sid": "Enable IAM User Permissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::975049898882:root" // this is a mock AWS Principal ID, your ID will differ
},
"Action": [
"kms:Decrypt",
"kms:Encrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey",
"kms:CreateGrant"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:PrincipalAccount": "975049898882" // this is a mock AWS Principal ID, your ID will differ
}
}
},
{
"Sid": "CJA Flow IAM User Permissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::767397686373:root"
},
"Action": [
"kms:Decrypt",
"kms:Encrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey",
"kms:CreateGrant"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:PrincipalAccount": "767397686373"
}
}
},
{
"Sid": "CJA Integrity IAM User Permissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::730335345392:root"
},
"Action": [
"kms:Decrypt",
"kms:Encrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey",
"kms:CreateGrant"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:PrincipalAccount": "730335345392"
}
}
},
{
"Sid": "CJA Oberon IAM User Permissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::891377157113:root"
},
"Action": [
"kms:Decrypt",
"kms:Encrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey",
"kms:CreateGrant"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:PrincipalAccount": "891377157113"
}
}
}
]
}
选择 Finish 以确认更新的策略并创建密钥。 现在,配置包含五个语句,以使您的AWS帐户能够与Adobe Experience Platform通信。 更改将立即生效。
将显示AWS Key Management Service的已更新Customer Managed Keys工作区。
将AWS加密密钥详细信息添加到平台
接下来,要启用加密,请将密钥的Amazon资源名称(ARN)添加到平台客户托管密钥配置。 在AWS的Customer Managed Keys部分中,从Key Management Service的列表中选择新密钥的别名。
此时将显示键的详细信息。 AWS中的所有内容都有一个Amazon资源名称(ARN),该名称包含
是用于跨AWS服务指定资源的唯一标识符。 它遵循标准化格式: arn:partition:service:region:account-id:resource
。
选择复制图标以复制您的ARN。 将显示确认对话框。
现在,导航回平台客户托管密钥配置 UI。 在 添加AWS加密密钥详细信息 部分中,添加从AWS UI复制的 配置名称 和 KMS密钥ARN。
接下来,选择 SAVE 以提交配置名称、KMS密钥ARN,并开始验证密钥。
返回加密配置工作区。 加密配置的状态显示在 客户管理的密钥 卡的底部。
验证密钥后,密钥保管库标识符将添加到所有沙盒的数据湖和配置文件数据存储中。
密钥撤销 key-revocation
以下是密钥撤销的关键注意事项:
- 撤销或禁用密钥将导致无法访问您的Platform数据。 此操作不可逆,应谨慎执行。
- 在撤销对加密密钥的访问时,请考虑传播时间线。 在几分钟到24小时内无法访问主数据存储。 缓存或临时数据存储在7天内变得不可访问。
要撤销密钥,请导航到AWS KMS工作区。 Customer managed keys 部分显示您的AWS帐户的所有可用密钥。 从列表中选择密钥的别名。
此时将显示键的详细信息。 要禁用该键,请从下拉菜单中选择 Key actions,然后选择 Disable。
将显示确认对话框。 选择 Disable key 以确认您的选择。 禁用键的影响应在大约五分钟内反映在Platform应用程序和UI中。
或者,如果您的密钥跨其他服务使用,则可以直接从密钥策略中删除Experience Platform的访问权限。 在 Key Policy 部分中选择 编辑。
此时会显示 Edit key policy 页面。 突出显示并删除从Platform UI复制的策略语句,以删除客户管理的密钥应用程序的权限。 然后,选择 Save changes 以完成该过程。
密钥轮替 key-rotation
AWS提供自动和按需密钥轮替。 为了降低密钥泄露的风险或满足安全合规性要求,您可以根据需要或定期自动生成新的加密密钥。 计划自动密钥轮换以限制密钥的生命周期,并确保如果密钥受损,其在轮换后不可用。 虽然现代加密算法高度安全,但密钥轮换是一项重要的安全合规性措施,并表明遵守了安全最佳实践。
自动密钥轮替 automatic-key-rotation
默认情况下禁用自动密钥轮替。 要从KMS工作区计划自动密钥轮替,请选择 Key rotation 选项卡,然后在 Automatic key rotation section 中选择 Edit。
出现 Edit automatic key rotation 工作区。 在此处,选择单选按钮以启用或禁用自动密钥轮替。 然后,使用文本输入字段或下拉菜单为键旋转选择时间段。 选择 Save 以确认您的设置并返回密钥详细信息工作区。
按需密钥轮换 on-demand-key-rotation
选择 Rotate Now 以在当前密钥被泄露时执行立即密钥轮替。 AWS限制此功能为10次轮换。 对于定期维护,请安排自动轮换键。
后续步骤
阅读本文档后,您已了解如何在AWS KMS for Adobe Experience Platform中创建、配置和管理加密密钥。 接下来,审查您组织的安全性和法规遵从性策略以实施最佳做法,如安排密钥轮换和确保密钥存储安全。