

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

# 使用 Amazon VPC 和 AWS PrivateLink 保护您的数据
<a name="usingVPC"></a>

要控制对数据的访问，我们建议您使用通过 [Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 创建的虚拟私有云（VPC）。使用 VPC，您可以保护数据并通过 [VPC 流日志](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html)来监控进出 AWS 作业容器的所有网络流量。

您可以对 VPC 进行配置，确保数据无法通过互联网访问，然后使用 [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html) 创建 VPC 接口端点以建立与数据的私有连接，从而进一步保护您的数据。

下面列出了 Amazon Bedrock 的一些功能，您可以在这些功能中使用 VPC 来保护您的数据：
+ 模型自定义 – [（可选）使用 VPC 保护模型自定义作业](custom-model-job-access-security.md#vpc-model-customization)
+ 批量推理 – [使用 VPC 保护批量推理作业](batch-vpc.md)
+ Amazon Bedrock 知识库 – [使用接口端点（AWS PrivateLink）访问 Amazon OpenSearch 无服务器](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-vpc.html)

## 设置 VPC
<a name="create-vpc"></a>

您可以使用[默认 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/default-vpc.html)，也可以按照[开始使用 Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-getting-started.html) 和[创建 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/create-vpc.html) 中的指南创建新的 VPC。

创建 VPC 时，我们建议您对端点路由表使用默认的 DNS 设置，以便解析标准 Amazon S3 URL（例如 `http://s3-aws-region.amazonaws.com/training-bucket`）。

以下主题介绍如何借助 AWS PrivateLink 设置 VPC 端点，以及使用 VPC 保护对 S3 文件的访问的示例应用场景。

**Topics**
+ [设置 VPC](#create-vpc)
+ [使用接口 VPC 端点（AWS PrivateLink）在 VPC 和 Amazon Bedrock 之间创建私有连接](vpc-interface-endpoints.md)
+ [（示例）使用 VPC 限制对 Amazon S3 数据的访问](vpc-s3.md)

# 使用接口 VPC 端点（AWS PrivateLink）在 VPC 和 Amazon Bedrock 之间创建私有连接
<a name="vpc-interface-endpoints"></a>

您可以使用 AWS PrivateLink 在您的 VPC 和 Amazon Bedrock 之间创建私有连接。您可以像在您的 VPC 中一样访问 Amazon Bedrock，无需使用互联网网关、NAT 设备、VPN 连接或 Direct Connect 连接。VPC 中的实例不需要公有 IP 地址即可访问 Amazon Bedrock。

您可以通过创建由 AWS PrivateLink提供支持的*接口端点*来建立此私有连接。我们将在您为接口端点启用的每个子网中创建一个端点网络接口。这些是请求者托管式网络接口，用作发往 Amazon Bedrock 的流量的入口点。

有关更多信息，请参阅*AWS PrivateLink 指南 AWS PrivateLink*中的[AWS 服务 通过访问](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-access-aws-services.html)。

## Amazon Bedrock VPC 端点注意事项
<a name="vpc-endpoint-considerations"></a>

在为 Amazon Bedrock 设置接口端点之前，请查看《AWS PrivateLink 指南》中的[注意事项](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#considerations-interface-endpoints)**。

Amazon Bedrock 支持通过 VPC 端点进行以下 API 调用。


****  

| 类别 | 端点后缀 | 
| --- | --- | 
| [Amazon Bedrock 控制面板 API 操作](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Amazon_Bedrock.html) | bedrock | 
| [Amazon Bedrock 运行时 API 操作](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Amazon_Bedrock_Runtime.html) | bedrock-runtime | 
| 亚马逊 Bedrock Mantle API 操作 | bedrock-mantle | 
| [Amazon Bedrock 代理构建时 API 操作](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Agents_for_Amazon_Bedrock.html) | bedrock-agent | 
| [Amazon Bedrock 代理运行时 API 操作](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Agents_for_Amazon_Bedrock_Runtime.html) | bedrock-agent-runtime | 

**可用区**

Amazon Bedrock 和 Amazon Bedrock 代理端点在多个可用区可用。

## 为 Amazon Bedrock 创建接口端点
<a name="vpc-endpoint-create"></a>

您可以使用亚马逊 VPC 控制台或 AWS Command Line Interface (AWS CLI) 为 Amazon Bedrock 创建接口终端节点。有关更多信息，请参阅《AWS PrivateLink 指南》**中的[创建接口端点](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#create-interface-endpoint-aws)。

使用以下任一服务名称为 Amazon Bedrock 创建接口端点：
+ `com.amazonaws.region.bedrock`
+ `com.amazonaws.region.bedrock-runtime`
+ `com.amazonaws.region.bedrock-mantle`
+ `com.amazonaws.region.bedrock-agent`
+ `com.amazonaws.region.bedrock-agent-runtime`

在创建端点后，您可以选择启用私有 DNS 主机名。在创建 VPC 端点时，通过在 VPC 控制台中选择启用私有 DNS 名称，可启用此设置。

如果为接口端点启用私有 DNS，则可以使用区域的默认 DNS 名称向 Amazon Bedrock 发出 API 请求。以下示例显示了默认区域 DNS 名称的格式。
+ `bedrock.region.amazonaws.com`
+ `bedrock-runtime.region.amazonaws.com`
+ `bedrock-mantle.region.api.aws`
+ `bedrock-agent.region.amazonaws.com`
+ `bedrock-agent-runtime.region.amazonaws.com`

## 为接口端点创建端点策略
<a name="vpc-endpoint-policy"></a>

端点策略是一种 IAM 资源，您可以将其附加到接口端点。默认端点策略提供通过接口端点访问 Amazon Bedrock 的完全访问权限。要控制允许从 VPC 访问 Amazon Bedrock 的访问权限，请将自定义端点策略附加到接口端点。

端点策略指定以下信息：
+ 可执行操作的主体（AWS 账户、IAM 用户和 IAM 角色）。
+ 可执行的操作。
+ 可对其执行操作的资源。

有关更多信息，请参阅《AWS PrivateLink 指南》**中的[使用端点策略控制对服务的访问权限](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html)。

**示例：适用于 Amazon Bedrock 操作的 VPC 端点策略**  
以下是自定义端点策略的示例。当将该基于资源的策略附加到接口端点时，它会向所有主体授予对所有资源执行所列 Amazon Bedrock 操作的访问权限。

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Principal": "*",
         "Effect": "Allow",
         "Action": [
            "bedrock:InvokeModel",
            "bedrock:InvokeModelWithResponseStream"
         ],
         "Resource":"*"
      }
   ]
}
```

------

**示例：亚马逊 Bedrock Mantle 操作的 VPC 终端节点策略**  
以下是自定义端点策略的示例。当您将此基于资源的策略附加到接口终端节点时，它会向所有委托人授予所有资源上列出的 Amazon Bedrock Mantle 操作的访问权限。

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Principal": "*",
         "Effect": "Allow",
         "Action": [
            "bedrock-mantle:CreateInference"
         ],
         "Resource":"*"
      }
   ]
}
```

# （示例）使用 VPC 限制对 Amazon S3 数据的访问
<a name="vpc-s3"></a>

您可以使用 VPC 来限制对 Amazon S3 存储桶中的数据的访问。为了进一步提高安全性，您可以将 VPC 配置为无法访问互联网，并使用 AWS PrivateLink为其创建一个端点。您还可以通过将基于资源的策略附加到 VPC 端点或 S3 存储桶来限制访问。

**Topics**
+ [创建 Amazon S3 VPC 端点](#vpc-s3-create)
+ [（可选）使用 IAM 策略限制对 S3 文件的访问](#vpc-policy-rbp)

## 创建 Amazon S3 VPC 端点
<a name="vpc-s3-create"></a>

如果您将 VPC 配置为无法访问互联网，则需要创建一个 [Amazon S3 VPC 端点](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html)，以允许模型自定义作业访问存储训练和验证数据以及将存储模型构件的 S3 存储桶。

按照[创建适用于 Amazon S3 的网关端点](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html#create-gateway-endpoint-s3)中的步骤操作，创建 S3 VPC 端点。

**注意**  
如果您的 VPC 不使用默认 DNS 设置，则需要通过配置终端节点路由表来确保训练作业中数据位置的解析。 URLs 有关 VPC 端点路由表的信息，请参阅[网关端点路由](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpce-gateway.html#vpc-endpoints-routing)。

## （可选）使用 IAM 策略限制对 S3 文件的访问
<a name="vpc-policy-rbp"></a>

您可以使用[基于资源的策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_identity-vs-resource.html)来更严格地控制对 S3 文件的访问。您可以使用以下基于资源的策略类型的任意组合。
+ **端点策略** – 您可以将端点策略附加到 VPC 端点，以通过 VPC 端点限制访问。默认端点策略允许您的 VPC 中的任何用户或服务完全访问 Amazon S3。在创建端点时或创建端点后，您可以选择将基于资源的策略附加到端点以添加限制，例如仅允许端点访问特定存储桶或仅允许特定 IAM 角色访问端点。有关示例，请参阅[编辑 VPC 端点策略](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html#edit-vpc-endpoint-policy-s3)。

  下面是您可以附加到 VPC 端点的示例策略，以仅允许该端点访问您指定的存储桶。

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "RestrictAccessToTrainingBucket",
              "Effect": "Allow",
              "Principal": "*",
              "Action": [
                  "s3:GetObject",
                  "s3:ListBucket"
              ],
              "Resource": [
                  "arn:aws:s3:::bucket",
                  "arn:aws:s3:::bucket/*"
              ]
          }
      ]
  }
  ```

------
+ **存储桶策略** – 您可以将存储桶策略附加到 S3 存储桶，以限制对 S3 存储桶的访问。要创建存储桶策略，请按照[使用存储桶策略](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-policies.html)中的步骤操作。要将访问限制为来自 VPC 的流量，您可以使用条件键来指定 VPC、VPC 端点或 VPC 的 IP 地址。[你可以使用 [aws: SourceVPC、aws: SourceVPC](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcevpc)[E 或 aws: 条件密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcevpce)。VpcSourceIp](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-vpcsourceip)

  下面是您可以附加到 S3 存储桶的示例策略，以拒绝所有流向该存储桶的流量，除非流量来自 VPC。

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "RestrictAccessToOutputBucket",
              "Effect": "Deny",
              "Principal": "*",
              "Action": [
                  "s3:GetObject",
                  "s3:PutObject",
                  "s3:ListBucket"
              ],
              "Resource": [
                  "arn:aws:s3:::bucket",
                  "arn:aws:s3:::bucket/*"
              ],
              "Condition": {
                  "StringNotEquals": {
                      "aws:sourceVpc": "vpc-11223344556677889"
                  }
              }
          }
      ]
  }
  ```

------

  有关更多示例，请参阅[使用存储桶策略控制访问](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html#bucket-policies-s3)。