使用 VPC 端点 - Amazon CodeBuild
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用 VPC 端点

您可以通过将 Amazon CodeBuild 配置为使用接口 VPC 端点来提高构建的安全性。接口端点由 PrivateLink 提供技术支持,该技术可用于通过私有 IP 地址私下访问 Amazon EC2 和 CodeBuild。PrivateLink 将托管实例、CodeBuild 和 Amazon EC2 之间的所有网络流量限制在 Amazon 网络以内。(托管实例无法访问 Internet。) 而且,您无需 Internet 网关、NAT 设备或虚拟专用网关。不要求您配置 PrivateLink,但推荐进行配置。有关 PrivateLink 和 VPC 端点的更多信息,请参阅什么是 Amazon PrivateLink?

在您创建 VPC 端点前

在配置 Amazon CodeBuild 的 VPC 端点之前,请注意以下限制。

注意

如果您想将 CodeBuild 与不支持 Amazon VPC PrivateLink 连接的 Amazon 服务结合使用,请使用 NAT 网关

  • VPC 端点仅通过 Amazon Route 53 支持 Amazon 提供的 DNS。如果您希望使用自己的 DNS,可以使用条件 DNS 转发。有关更多信息,请参阅《Amazon VPC 用户指南》中的 DHCP 选项集

  • VPC 端点当前不支持跨区域请求。确保您在存储构建输入和输出的任何 S3 存储桶所在的相同 Amazon 区域内创建端点。您可以使用 Amazon S3 控制台或 get-bucket-location 命令来查找存储桶的位置。使用区域特定的 Amazon S3 端点访问存储桶(例如,<bucket-name>.s3-us-west-2.amazonaws.com)。有关 Amazon S3 的区域特定端点的更多信息,请参阅《Amazon Web Services 一般参考》中的 Amazon Simple Storage Service。如果您使用 Amazon CLI 向 Amazon S3 发起请求,请将默认区域设置为创建您的存储桶的区域,或在请求中使用 --region 参数。

为 CodeBuild 创建 VPC 端点

按照创建接口端点中的说明操作,创建端点 com.amazonaws.region.codebuild。这是用于 Amazon CodeBuild 的 VPC 端点。

region 表示 CodeBuild 支持的 Amazon 区域的区域标识符,例如美国东部(俄亥俄州)区域的 us-east-2。有关支持的 Amazon 区域的列表,请参阅《Amazon 一般参考》中的 CodeBuild。使用您在登录到 Amazon 时指定的区域来预填充终端节点。如果更改您的区域,VPC 端点会相应地更新。

为 CodeBuild 创建 VPC 端点策略

您可以为 Amazon CodeBuild 的 Amazon VPC 端点创建一个策略,在其中可以指定:

  • 可执行操作的主体。

  • 可执行的操作。

  • 可用于执行操作的资源。

以下示例策略指定所有委托人只能启动和查看 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 端点控制对服务的访问