Amazon Comprehend 中的 KMS 加密 - Amazon Comprehend

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon Comprehend 中的 KMS 加密

Amazon Comprehend 与 AWS Key Management Service (AWS KMS) 配合使用,为您的数据提供增强的加密。Amazon S3 已经允许您在创建文本分析、主题建模或自定义 Amazon Comprehend 作业时对输入文档进行加密。AWS KMS 与集成后,您可以加密存储卷中用于“Start*”和“Create*”作业的数据,并使用您自己的 KMS 密钥对“Start*”作业的输出结果进行加密。

对于 AWS Management Console,Amazon Comprehend 使用自己的 KMS 密钥对自定义模型进行加密。对于 AWS CLI,Amazon Comprehend 可以使用自己的 KMS 密钥或提供的客户自主管理型密钥 (CMK) 对自定义模型进行加密。

使用 AWS Management Console 的 KMS 加密

使用控制台时,有两个加密选项可用:

  • 卷加密

  • 输出结果加密

启用卷加密
  1. 作业设置下,选择作业加密选项。

    AWS Management Console 中的 KMS 作业加密
  2. 选择 KMS 客户自主管理型密钥 (CMK) 来自您当前使用的账户还是其他账户。如果您想要使用来自当前账户的密钥,请从 KMS 密钥 ID 选择密钥别名。如果您使用来自其他账户的密钥,则必须输入密钥的 ARN。

启用输出结果加密
  1. 输出设置下,选择加密选项。

    KMS 输出结果加密在 AWS Management Console
  2. 选择 客户自主管理型密钥 (CMK) 是来自您当前使用的账户还是其他账户。如果您要使用来自当前账户的密钥,请从 KMS 密钥 ID 选择密钥 ID。如果您使用来自其他账户的密钥,则必须输入密钥的 ARN。

如果您之前已在 S3 输入文档上使用 SSE-KMS 设置加密,则这可以为您提供额外的安全性。但是,如果您这样做,则所使用的 IAM 角色必须拥有加密输入文档的 KMS 密钥的 kms:Decrypt 权限。有关更多信息,请参阅 使用 KMS 加密所需的权限

使用 API 操作进行 KMS 加密

所有 Amazon Comprehend Start*Create* API 操作都支持 KMS 加密的输入文档。如果原始作业提供 KmsKeyId 作为输入,则 Describe*List* API 操作会返回 OutputDataConfig 中的 KmsKeyId。如果未将其作为输入提供,则不会将其返回。

这可以在以下 AWS CLI 示例中使用StartEntitiesDetectionJob操作看出:

aws comprehend start-entities-detection-job \ --region region \ --data-access-role-arn "data access role arn" \ --entity-recognizer-arn "entity recognizer arn" \ --input-data-config "S3Uri=s3://Bucket Name/Bucket Path" \ --job-name job name \ --language-code en \ --output-data-config "KmsKeyId=Output S3 KMS key ID" "S3Uri=s3://Bucket Name/Bucket Path/" \ --volumekmskeyid "Volume KMS key ID"
注意

此示例的格式适用于 Unix、Linux 和 macOS。对于 Windows,请将每行末尾的反斜杠 (\) Unix 行继续符替换为脱字号 (^)。

使用 API 操作进行客户自主管理型密钥 (CMK) 加密

Amazon Comprehend 自定义模型 API 操作 CreateEntityRecognizerCreateDocumentClassifierCreateEndpoint,支持通过 AWS CLI 使用客户自主管理型密钥进行加密。

您可以使用 IAM policy 来允许委托人使用或管理客户自主管理型密钥。这些密钥在策略语句的 Resource 元素中指定。最佳做法是,将客户自主管理型密钥限制为仅限委托人必须在您的策略语句中使用的密钥。

以下 AWS CLI 示例使用CreateEntityRecognizer操作创建具有模型加密功能的自定义实体识别器:

aws comprehend create-entity-recognizer \ --recognizer-name name \ --data-access-role-arn data access role arn \ --language-code en \ --model-kms-key-id Model KMS Key ID \ --input-data-config file:///path/input-data-config.json
注意

此示例的格式适用于 Unix、Linux 和 macOS。对于 Windows,请将每行末尾的反斜杠 (\) Unix 行继续符替换为脱字号 (^)。