本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
中的数据保护 AWS Entity Resolution 数据匹配服务
分 AWS 担责任模型
出于数据保护目的,我们建议您保护 AWS 账户 凭证并使用 AWS IAM Identity Center 或 AWS Identity and Access Management (IAM) 设置个人用户。这样,每个用户只获得履行其工作职责所需的权限。还建议您通过以下方式保护数据:
-
对每个账户使用多重身份验证(MFA)。
-
使用 SSL/TLS 与资源通信。 AWS 我们要求使用 TLS 1.2,建议使用 TLS 1.3。
-
使用设置 API 和用户活动日志 AWS CloudTrail。有关使用 CloudTrail 跟踪捕获 AWS 活动的信息,请参阅《AWS CloudTrail 用户指南》中的使用跟 CloudTrail 踪。
-
使用 AWS 加密解决方案以及其中的所有默认安全控件 AWS 服务。
-
使用高级托管安全服务(例如 Amazon Macie),它有助于发现和保护存储在 Amazon S3 中的敏感数据。
-
如果您在 AWS 通过命令行界面或 API 进行访问时需要经过 FIPS 140-3 验证的加密模块,请使用 FIPS 端点。有关可用的 FIPS 端点的更多信息,请参阅《美国联邦信息处理标准(FIPS)第 140-3 版》
。
强烈建议您切勿将机密信息或敏感信息(如您客户的电子邮件地址)放入标签或自由格式文本字段(如名称字段)。这包括您使用控制台、API AWS Entity Resolution 数据匹配服务 或以其他 AWS 服务 方式使用控制台 AWS CLI、API 或时 AWS SDKs。在用于名称的标签或自由格式文本字段中输入的任何数据都可能会用于计费或诊断日志。如果您向外部服务器提供网址,强烈建议您不要在网址中包含凭证信息来验证对该服务器的请求。
静态数据加密 AWS Entity Resolution 数据匹配服务
AWS Entity Resolution 数据匹配服务 默认提供加密,以使用 AWS 自有的加密密钥保护敏感的静态客户数据。
AWS 拥有的密钥 — 默认 AWS Entity Resolution 数据匹配服务 使用这些密钥自动加密个人身份数据。您无法查看、管理或使用 AWS 自有密钥,也无法审核其使用情况。但是,您无需采取任何措施来保护加密数据的密钥。有关更多信息,请参阅《AWS Key Management Service 开发人员指南》中的 AWS 拥有的密钥。
默认情况下,静态数据加密有助于降低保护敏感数据的操作开销和复杂性。同时,您可以使用它来构建符合严格加密合规性和监管要求的安全应用程序。
或者,您也可以在创建匹配的工作流程资源时提供客户托管的 KMS 密钥进行加密。
客户托管密钥- AWS Entity Resolution 数据匹配服务 支持使用由您创建、拥有和管理的对称客户托管 KMS 密钥来加密您的敏感数据。由于您可以完全控制这层加密,因此可以执行以下任务:
-
制定和维护关键策略
-
建立和维护 IAM 策略和授权
-
启用和禁用密钥策略
-
轮换加密材料
-
添加标签
-
创建密钥别名
-
计划删除密钥
有关更多信息,请参阅《AWS Key Management Service 开发人员指南》中的客户托管密钥。
有关更多信息 AWS KMS,请参阅什么是 AWS Key Management Service?
密钥管理
如何在中 AWS Entity Resolution 数据匹配服务 使用补助 AWS KMS
AWS Entity Resolution 数据匹配服务 需要获得授权才能使用您的客户托管密钥。当您创建使用客户托管密钥加密的匹配工作流程时, AWS Entity Resolution 数据匹配服务 会通过向发送CreateGrant请求来代表您创建授权 AWS KMS。中的授权 AWS KMS 用于授予对客户账户中的 KMS 密钥的 AWS Entity Resolution 数据匹配服务 访问权限。 AWS Entity Resolution 数据匹配服务 需要获得授权才能使用您的客户托管密钥进行以下内部操作:
-
向发送GenerateDataKey请求 AWS KMS 以生成由您的客户托管密钥加密的数据密钥。
-
将 Decrypt 请求发送 AWS KMS 到以解密加密的数据密钥,以便它们可用于加密您的数据。
您可以随时撤销授予访问权限,或删除服务对客户托管密钥的访问权限。如果这样做,将 AWS Entity Resolution 数据匹配服务 无法访问由客户托管密钥加密的任何数据,这会影响依赖该数据的操作。例如,如果您通过授权删除了对密钥的服务访问权限,并尝试为使用客户密钥加密的匹配工作流程启动任务,则该操作将返回AccessDeniedException
错误。
创建客户托管的密钥
您可以使用 AWS Management Console、或,创建对称的客户托管密钥。 AWS KMS APIs
创建对称的客户托管密钥
AWS Entity Resolution 数据匹配服务 支持使用对称加密 KMS 密钥进行加密。按照《AWS Key Management Service 开发人员指南》中创建对称的客户托管密钥的步骤进行操作。
关键政策声明
密钥政策控制对客户托管密钥的访问。每个客户托管式密钥必须只有一个密钥策略,其中包含确定谁可以使用密钥以及如何使用密钥的声明。创建客户托管式密钥时,可以指定密钥策略。有关更多信息,请参阅《AWS Key Management Service 开发人员指南》中的管理客户托管密钥的访问权限。
要将客户托管密钥 AWS Entity Resolution 数据匹配服务 用于您的资源,必须在密钥策略中允许以下 API 操作:
-
kms:DescribeKey
— 提供密钥 ARN、创建日期(以及删除日期,如果适用)、密钥状态以及密钥材料的来源和到期日期(如果有)等信息。它包括可帮助您区分不同类型的 KMS 密钥的字段(例如KeySpec
)。它还显示密钥的使用情况(加密、签名或生成和验证 MACs)以及 KMS 密钥支持的算法。 AWS Entity Resolution 数据匹配服务 验证是SYMMETRIC_DEFAULT
和KeySpec
KeyUsage
是ENCRYPT_DECRYPT
。 -
kms:CreateGrant
– 向客户托管密钥添加授权。授予对指定 KMS 密钥的控制访问权限,从而允许对授予操作 AWS Entity Resolution 数据匹配服务 所需的访问权限。有关使用授权的更多信息,请参阅《AWS Key Management Service 开发人员指南》。
这 AWS Entity Resolution 数据匹配服务 允许执行以下操作:
-
调用
GenerateDataKey
生成加密的数据密钥并将其存储,因为数据密钥不会立即用于加密。 -
调用
Decrypt
使用存储的加密数据密钥访问加密数据。 -
设置停用主体,以允许服务
RetireGrant
。
以下是您可以为其添加的策略声明示例 AWS Entity Resolution 数据匹配服务:
{ "Sid" : "Allow access to principals authorized to use AWS Entity Resolution", "Effect" : "Allow", "Principal" : { "AWS" : "*" }, "Action" : ["kms:DescribeKey","kms:CreateGrant"], "Resource" : "*", "Condition" : { "StringEquals" : { "kms:ViaService" : "entityresolution.region.amazonaws.com", "kms:CallerAccount" : "111122223333" } } }
用户的权限
将 KMS 密钥配置为加密的默认密钥时,默认 KMS 密钥策略允许任何有权访问所需 KMS 操作的用户使用此 KMS 密钥来加密或解密资源。要使用客户托管的 KMS 密钥加密,您必须向用户授予调用以下操作的权限:
-
kms:CreateGrant
-
kms:Decrypt
-
kms:DescribeKey
-
kms:GenerateDataKey
在CreateMatchingWorkflow
请求期间, AWS Entity Resolution 数据匹配服务 将代表您 AWS KMS 向发送DescribeKey和CreateGrant请求。这将要求使用客户托管的 KMS 密钥CreateMatchingWorkflow
提出请求的 IAM 实体拥有 KMS 密钥策略的kms:DescribeKey
权限。
在 an CreateIdMappingWorkflow
d StartIdMappingJob
请求期间, AWS Entity Resolution 数据匹配服务 将 AWS KMS 代表您向发送DescribeKey和CreateGrant请求。这将要求使用客户托管的 KMS 密钥进行CreateIdMappingWorkflow
和StartIdMappingJob
请求的 IAM 实体拥有 KMS 密钥策略的kms:DescribeKey
权限。提供商将能够访问客户托管的密钥来解密 AWS Entity Resolution 数据匹配服务 Amazon S3 存储桶中的数据。
以下是您可以添加的策略声明示例,供提供商解密 AWS Entity Resolution 数据匹配服务 Amazon S3 存储桶中的数据:
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::715724997226:root" }, "Action": [ "kms:Decrypt" ], "Resource": "
<KMSKeyARN>
", "Condition": { "StringEquals": { "kms:ViaService": "s3.amazonaws.com" } } }] }
将每个 <user input placeholder>
替换为您自己的信息。
<KMSKeyARN> |
AWS KMS 亚马逊资源名称。 |
同样,调用 StartMatchingJob
API 的 IAM 实体必须拥有匹配工作流程中提供的客户托管 KMS 密钥kms:Decrypt
和kms:GenerateDataKey
权限。
有关在策略中指定权限的更多信息,请参阅AWS Key Management Service 开发人员指南。
有关密钥访问疑难解答的更多信息,请参阅《AWS Key Management Service 开发人员指南》。
为指定客户管理的密钥 AWS Entity Resolution 数据匹配服务
您可以指定客户托管密钥作为以下资源的第二层加密:
匹配工作流程-创建匹配的工作流资源时,可以通过输入 a 来指定数据密钥 KMSArn,该 AWS Entity Resolution 数据匹配服务 密钥用于加密资源存储的可识别个人数据。
KMSArn— 输入密钥 ARN,这是 AWS KMS 客户托管密钥的密钥标识符。
如果您要在两个资源之间创建或运行 ID 映射工作流程,则可以将客户托管密钥指定为以下资源的第二层加密 AWS 账户:
ID 映射工作流程或启动 ID 映射工作流程-创建 ID 映射工作流资源或启动 ID 映射工作流程作业时,您可以通过输入 a 来指定数据密钥 KMSArn,该 AWS Entity Resolution 数据匹配服务 密钥用于加密资源存储的可识别个人数据。
KMSArn— 输入密钥 ARN,这是 AWS KMS 客户托管密钥的密钥标识符。
监控您的 AWS Entity Resolution 数据匹配服务 服务加密密钥
当您在 AWS Entity Resolution 数据匹配服务 服务资源中使用 AWS KMS 客户托管密钥时,您可以使用 AWS CloudTrail 或 A mazon CloudWatch Logs 来跟踪 AWS Entity Resolution 数据匹配服务 发送到的请求 AWS KMS。
以下示例是CreateGrant
、GenerateDataKey
Decrypt
、和监控DescribeKey
为访问由 AWS Entity Resolution 数据匹配服务 您的客户托管密钥加密的数据而调用的 AWS KMS 操作 AWS CloudTrail 的事件:
CreateGrant
当您使用 AWS KMS 客户托管密钥加密匹配的工作流程资源时, AWS Entity Resolution 数据匹配服务 会代表您发送CreateGrant
请求以访问您中的 KMS 密钥 AWS 账户。 AWS Entity Resolution 数据匹配服务 创建的授权特定于与 AWS KMS 客户托管密钥关联的资源。此外,在您删除资源时, AWS Entity Resolution 数据匹配服务 使用RetireGrant
操作来移除授权。
以下示例事件记录了 CreateGrant
操作:
{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE3", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-04-22T17:02:00Z" } }, "invokedBy": "entityresolution.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "retiringPrincipal": "entityresolution.region.amazonaws.com", "operations": [ "GenerateDataKey", "Decrypt", ], "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "granteePrincipal": "entityresolution.region.amazonaws.com" }, "responseElements": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": false, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333" }
DescribeKey
AWS Entity Resolution 数据匹配服务 使用该DescribeKey
操作来验证与您的匹配资源关联的 AWS KMS 客户托管密钥是否存在于账户和区域中。
以下示例事件记录了 DescribeKey
操作:
{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE3", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-04-22T17:02:00Z" } }, "invokedBy": "entityresolution.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "DescribeKey", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "keyId": "00dd0db0-0000-0000-ac00-b0c000SAMPLE" }, "responseElements": null, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333" }
GenerateDataKey
当您为匹配的工作流程资源启用 AWS KMS 客户托管密钥时, AWS Entity Resolution 数据匹配服务 会通过亚马逊简单存储服务 (Amazon S3) Simple Service 向 AWS KMS
其发送GenerateDataKey
请求,指定 AWS KMS 该资源的客户托管密钥。
以下示例事件记录了 GenerateDataKey
操作:
{ "eventVersion": "1.08", "userIdentity": { "type": "AWSService", "invokedBy": "s3.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "keySpec": "AES_256", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" }, "responseElements": null, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333", "sharedEventID": "57f5dbee-16da-413e-979f-2c4c6663475e" }
Decrypt
当您为匹配的工作流程资源启用 AWS KMS 客户托管密钥时, AWS Entity Resolution 数据匹配服务 会通过亚马逊简单存储服务 (Amazon S3) Simple Service 向 AWS KMS 其发送Decrypt
请求,指定 AWS KMS 该资源的客户托管密钥。
以下示例事件记录了 Decrypt
操作:
{ "eventVersion": "1.08", "userIdentity": { "type": "AWSService", "invokedBy": "s3.amazonaws.com" }, "eventTime": "2021-04-22T17:10:51Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "encryptionAlgorithm": "SYMMETRIC_DEFAULT" }, "responseElements": null, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333", "sharedEventID": "dc129381-1d94-49bd-b522-f56a3482d088" }
注意事项
AWS Entity Resolution 数据匹配服务 不支持使用新的客户托管 KMS 密钥更新匹配的工作流程。在这种情况下,您可以使用客户托管的 KMS 密钥创建新的工作流程。
了解更多
以下资源提供有关静态数据加密的更多信息。
有关 AWS Key Management Service 基本概念的更多信息,请参阅AWS Key Management Service 开发人员指南。
有关 AWS Key Management Service 安全最佳实践的更多信息,请参阅AWS Key Management Service 开发人员指南。