对模型自定义任务和构件进行加密 - Amazon Bedrock

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

对模型自定义任务和构件进行加密

默认情况下,Amazon Bedrock 使用 AWS 托管密钥对模型自定义任务中的以下模型工件进行加密。

  • 模型定制任务

  • 模型自定义作业的输出文件(训练和验证指标)

  • 生成的自定义模型

或者,您可以通过创建客户托管密钥来加密模型工件。有关更多信息 AWS KMS keys,请参阅《AWS Key Management Service 开发人员指南》中的客户托管密钥。要使用客户管理的密钥,请执行以下步骤。

  1. 使用创建客户托管密钥 AWS Key Management Service。

  2. 附加基于资源的策略,允许指定角色创建或使用自定义模型。

创建客户托管密钥

首先,请确保您拥有CreateKey权限。然后按照创建密钥中的步骤在 AWS KMS 控制台或 CreateKeyAPI 操作中创建客户托管密钥。确保创建对称加密密钥。

创建密钥时会返回密钥Arn的值,您可以在提交模型自定义任务customModelKmsKeyId时将其用作密钥。

创建密钥策略并将其附加到客户托管密钥

按照创建密钥策略中的步骤,将以下基于资源的策略附加到 KMS 密钥。该策略包含两个声明。

  1. 角色对模型自定义构件进行加密的权限。将自定义模型构建者角色的 ARN 添加到该Principal字段。

  2. 角色在推理中使用自定义模型的权限。将自定义模型用户角色的 ARN 添加到该Principal字段。

{ "Version": "2012-10-17", "Id": "KMS Key Policy", "Statement": [ { "Sid": "Permissions for custom model builders", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-id:user/role" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*" }, { "Sid": "Permissions for custom model users", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-id:user/role" }, "Action": "kms:Decrypt", "Resource": "*" } }

对训练、验证和输出数据进行加密

当您使用 Amazon Bedrock 运行模型自定义任务时,您将输入(训练/验证数据)文件存储在您的 Amazon S3 存储桶中。任务完成后,Amazon Bedrock 会将输出指标文件存储在您在创建任务时指定的 S3 存储桶中,并将生成的自定义模型项目存储在由控制的 Amazon S3 存储桶中。 AWS

默认情况下,输入和输出文件使用 Amazon S3 SSE-S3 服务器端加密进行加密,AWS 托管式密钥使用。此类密钥由代表您创建、管理和使用 AWS。

相反,您可以选择使用您自己创建、拥有和管理的客户托管密钥来加密这些文件。请参阅前面的章节和以下链接,了解如何创建客户托管密钥和密钥策略。