

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

# 使用 VPC 端点
<a name="use-vpc-endpoints-with-codebuild"></a>

您可以通过配置为使用接口 VPC 终端节点 AWS CodeBuild 来提高构建的安全性。接口终端节点由 PrivateLink一种可用于私有访问 Amazon EC2 的技术和 CodeBuild 私有 IP 地址提供支持。 PrivateLink 将您的托管实例与 Amazon EC2 之间的所有网络流量限制到亚马逊网络。 CodeBuild（托管实例无法访问 Internet。） 而且，您无需 Internet 网关、NAT 设备或虚拟专用网关。不要求您配置 PrivateLink，但推荐进行配置。有关 PrivateLink 和 VPC 终端节点的更多信息，请参阅[什么是 AWS PrivateLink？](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html) 。

## 在您创建 VPC 端点前
<a name="vpc-endpoints-before-you-begin"></a>

 在为配置 VPC 终端节点之前 AWS CodeBuild，请注意以下限制和限制。

**注意**  
 如果您想与不支持 Amazon VPC PrivateLink 连接 CodeBuild 的 AWS 服务一起使用，请使用 NA [T 网关](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_NAT_Instance.html)。
+  VPC 端点仅通过 Amazon Route 53 支持 Amazon 提供的 DNS。如果您希望使用自己的 DNS，可以使用条件 DNS 转发。有关更多信息，请参阅《Amazon VPC 用户指南》中的 [DHCP 选项集](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html)。
+  VPC 端点当前不支持跨区域请求。请确保在与存储构建输入和输出的任何 S3 存储桶相同的 AWS 区域中创建终端节点。您可以使用 Amazon S3 控制台或[get-bucket-location](https://docs.aws.amazon.com/cli/latest/reference/s3api/get-bucket-location.html)命令来查找存储桶的位置。使用区域特定的 Amazon S3 端点访问存储桶（例如，`<bucket-name>.s3-us-west-2.amazonaws.com`）。有关 Amazon S3 的区域特定端点的更多信息，请参阅《Amazon Web Services 一般参考》中的 [Amazon Simple Storage Service](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region)。如果您使用向 Amazon S3 发出请求，请将默认区域设置为创建存储桶的相同区域，或者在请求中使用`--region`参数。 AWS CLI 

## 为创建 VPC 终端节点 CodeBuild
<a name="creating-vpc-endpoints"></a>

按照[创建接口端点](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint)中的说明操作，创建端点 `com.amazonaws.region.codebuild`。这是的 VPC 终端节点 AWS CodeBuild。

![\[VPC 端点配置。\]](http://docs.aws.amazon.com/zh_cn/codebuild/latest/userguide/images/vpc-endpoint.png)


 *region*表示所 CodeBuild支持的 AWS 区域（例如`us-east-2`美国东部（俄亥俄州）地区的区域标识符。有关支持的 AWS 区域列表，请参阅《* AWS 一般参考*》[CodeBuild](https://docs.aws.amazon.com/general/latest/gr/rande.html#codebuild_region)中的。终端节点已预先填充您在登录时指定的区域。 AWS如果更改您的区域，VPC 端点会相应地更新。

## 为创建 VPC 终端节点策略 CodeBuild
<a name="creating-vpc-endpoint-policy"></a>

 您可以为 Amazon VPC 终端节点创建策略，您可以在其中指定： AWS CodeBuild 
+ 可执行操作的主体。
+ 可执行的操作。
+ 可用于执行操作的资源。

以下示例策略指定所有委托人只能启动和查看 `project-name` 项目的构建。

```
{
    "Statement": [
        {
            "Action": [
                "codebuild:ListBuildsForProject",
                "codebuild:StartBuild",
                "codebuild:BatchGetBuilds"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:codebuild:region-ID:account-ID:project/project-name",
            "Principal": "*"
        }
    ]
}
```

 有关更多信息，请参阅《Amazon VPC 用户指南》中的[使用 VPC 端点控制对服务的访问](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html)。