[可选] 使用保护您的模型自定义作业 VPC - Amazon Bedrock

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

[可选] 使用保护您的模型自定义作业 VPC

当您运行模型自定义作业时,该作业会访问您的 Amazon S3 存储桶来下载输入数据和上传作业指标。要控制对数据的访问,我们建议您在 Amazon 上使用虚拟私有云 (VPC) VPC。您可以通过配置您的数据来进一步保护您的数据,VPC使您的数据无法通过 Internet 获取,而是使用以下命令创建一个VPC接口终端节点 AWS PrivateLink建立与您的数据的私有连接。如需了解有关 Amazon 如何VPC和 AWS PrivateLink 与 Amazon Bedrock 集成,请参阅使用 Amazon VPC 保护您的数据 AWS PrivateLink

执行以下步骤,VPC为模型自定义作业配置和使用训练、验证和输出数据。

设置VPC为在模型自定义期间保护您的数据

要设置VPC,请按照中的步骤操作设置一个 VPC。您可以VPC按照中的步骤设置 S3 VPC 终端节点并使用基于资源的IAM策略来限制对包含模型自定义数据的 S3 存储桶的访问权限,从而进一步保护您的安全。(示例)使用以下方法限制对您的 Amazon S3 数据的数据访问 VPC

为模型自定义角色附加VPC权限

完成设置后VPC,将以下权限附加到您的模型自定义服务角色以允许其访问VPC。修改此策略以仅允许访问您的工作所需的VPC资源。更换 ${{subnet-ids}} 以及 security-group-id 用你的价值观VPC。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", ], "Resource":[ "arn:aws:ec2:${{region}}:${{account-id}}:network-interface/*" ], "Condition": { "StringEquals": { "aws:RequestTag/BedrockManaged": ["true"] }, "ArnEquals": { "aws:RequestTag/BedrockModelCustomizationJobArn": ["arn:aws:bedrock:${{region}}:${{account-id}}:model-customization-job/*"] } } }, { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", ], "Resource":[ "arn:aws:ec2:${{region}}:${{account-id}}:subnet/${{subnet-id}}", "arn:aws:ec2:${{region}}:${{account-id}}:subnet/${{subnet-id2}}", "arn:aws:ec2:${{region}}:${{account-id}}:security-group/security-group-id" ] }, { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", ], "Resource": "*", "Condition": { "ArnEquals": { "ec2:Subnet": [ "arn:aws:ec2:${{region}}:${{account-id}}:subnet/${{subnet-id}}", "arn:aws:ec2:${{region}}:${{account-id}}:subnet/${{subnet-id2}}" ], "ec2:ResourceTag/BedrockModelCustomizationJobArn": ["arn:aws:bedrock:${{region}}:${{account-id}}:model-customization-job/*"] }, "StringEquals": { "ec2:ResourceTag/BedrockManaged": "true" } } }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:${{region}}:${{account-id}}:network-interface/*", "Condition": { "StringEquals": { "ec2:CreateAction": [ "CreateNetworkInterface" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": [ "BedrockManaged", "BedrockModelCustomizationJobArn" ] } } } ] }

提交模型自定义任务时添加VPC配置

按照前几节所述配置VPC和必需的角色和权限后,您可以创建使用该角色和权限的模型自定义作业VPC。

当您为任务指定VPC子网和安全组时,Amazon Bedrock 会在其中一个子网中创建与您的安全组关联的弹性网络接口 (ENIs)。ENIs允许 Amazon Bedrock 任务连接到您VPC中的资源。有关信息ENIs,请参阅 Amazon VPC 用户指南中的弹性网络接口。它创建的 Amazon Bedrock 标签ENIsBedrockManagedBedrockModelCusomizationJobArn标签。

我们建议您至少在每个可用区中提供一个子网。

您可以使用安全组来制定控制您VPC资源的 Amazon Bedrock 访问权限的规则。

您可以将配置VPC为在控制台中使用,也可以通过使用API。选择与您选择的方法相对应的选项卡,然后按照步骤操作。

Console

对于 Amazon Bedrock 控制台,您可以在创建模型自定义任务时在可选VPC设置部分指定VPC子网和安全组。有关配置作业的更多信息,请参阅提交模型定制任务

注意

对于包含VPC配置的作业,控制台无法自动为您创建服务角色。按照中的指导为模型自定义创建服务角色创建自定义角色。

API

提交CreateModelCustomizationJob请求时,可以将VpcConfig作为请求参数包括在内,以指定要使用的VPC子网和安全组,如以下示例所示。

"vpcConfig": { "securityGroupIds": [ "${{sg-0123456789abcdef0}}" ], "subnets": [ "${{subnet-0123456789abcdef0}}", "${{subnet-0123456789abcdef1}}", "${{subnet-0123456789abcdef2}}" ] }