

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

# 什么是连接？
<a name="welcome-connections"></a>

您可以使用开发者工具控制台中的*连接*功能将诸如外部代码存储库之类 AWS CodePipeline 的 AWS 资源连接起来。此功能有自己的 API，即 [AWS CodeConnectionsAPI 参考](https://docs.aws.amazon.com/codeconnections/latest/APIReference/Welcome.html)。每个连接都是您可以提供给 AWS 服务以连接第三方存储库（例如 Bitbucket）的资源。例如，您可以在中添加连接， CodePipeline 以便在对第三方代码存储库进行代码更改时，它会触发您的管道。每个连接都被命名并与用于引用连接的唯一 Amazon Resource Name (ARN) 相关联。

**重要**  
服务名称 AWS C CodeStar onnections 已重命名。仍然支持使用以前的命名空间 codestar-connections 创建的资源。

## 我可以使用连接执行哪些操作？
<a name="welcome-connections-what-can-I-do"></a>

您可以使用连接将第三方提供商资源与开发人员工具中的 AWS 资源集成，包括：
+ 连接到第三方提供商（例如 Bitbucket），并使用第三方连接作为与您的 AWS 资源的源集成，例如。 CodePipeline
+ 在第三方提供商的 CodeBuild 构建项目、 CodeDeploy 应用程序和管道中，统一管理跨资源 CodePipeline 对连接的访问权限。
+ 在堆栈模板中使用连接 ARN 来 CodeBuild 构建项目、 CodeDeploy应用程序和管道 CodePipeline，无需引用存储的机密或参数。

# 我可以为哪些第三方提供商创建连接？
<a name="welcome-connections-supported-providers"></a>

Connections 可以将您的 AWS 资源与以下第三方存储库相关联：
+ 天蓝色 DevOps
+ Bitbucket Cloud
+ GitHub.com
+ GitHub 企业云
**注意**  
当前，不支持 GitHub 企业云的自定义域。
+ GitHub 企业服务器
+ GitLab.com
**重要**  
对连接的支持 GitLab 包括 15.x 版及更高版本。
+ GitLab 自行管理安装（适用于企业版或社区版）

有关连接工作流的概述，请参阅[创建或更新连接的工作流](welcome-connections-workflow.md)。

为云提供商类型（例如）创建连接的步骤与为 GitHub已安装的提供商类型（例如 En GitHub terprise Server）创建连接的步骤不同。有关按提供程序类型创建连接的概要步骤，请参阅[使用连接](connections.md)。

**注意**  
要在欧洲（米兰）使用连接 AWS 区域，您必须：  
安装区域特定的应用程序
启用该区域
这一特定于区域的应用程序支持欧洲地区（米兰）区域中的连接。该应用程序在第三方提供商网站上发布，与支持其他区域的连接的现有应用程序是分开的。安装此应用程序，即表示您授权第三方提供商仅与该区域的服务共享您的数据，并且您可以随时通过卸载该应用程序来撤消权限。  
除非您启用区域，否则该服务不会处理或存储您的数据。启用此区域，即表示您授予我们的服务处理和存储您的数据的权限。  
即使未启用该区域，如果区域特定的应用程序仍保持安装状态，第三方提供商也仍可以与我们的服务共享您的数据，因此，请务必在禁用该区域后立即卸载该应用程序。有关更多信息，请参阅[启用区域](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable)。

## 什么与连接 AWS 服务 集成？
<a name="welcome-connections-integrations"></a>

您可以使用连接将您的第三方存储库与其他 AWS 服务集成。要查看连接的服务集成，请参阅[产品和服务与 AWS CodeConnections](integrations-connections.md)。

# 连接是如何工作的？
<a name="welcome-connections-how-it-works"></a>

在创建连接之前，您必须首先在您的第三方账户上安装 AWS 身份验证应用程序或提供对该应用程序的访问。安装连接后，可以更新它以使用此安装。创建连接时，您可以提供对第三方账户中 AWS 资源的访问。这允许连接代表您的 AWS 资源访问第三方账户中的内容，例如源存储库。然后，您可以与其他人共享该连接 AWS 服务 ，以便在资源之间提供安全的 OAuth 连接。

基于云的连接配置如下，并标明了用户帐户或组织之间的差异。
+ **用户帐户：**每个基于云的第三方用户帐户都安装了连接器应用程序。可以将多个连接与应用程序安装相关联。
+ **组织：**每个基于云的第三方组织都安装了连接器应用程序。对于组织中的连接，您与组织中每个组织帐户的连接映射为 1:1。不能将多个连接与应用程序安装相关联。有关组织如何使用连接的更多详细信息，请参阅[如何 AWS CodeConnections 与组织建立联系](welcome-connections-how-it-works-github-organizations.md)。

下图显示了基于云的连接如何与用户帐户或组织配合使用。

![\[该图显示了基于云的提供商的应用程序安装与连接之间的关系。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-flow.png)


连接归创建 AWS 账户 它们的人所有。连接由包含连接 ID 的 ARN 标识。连接 ID 是无法更改或重新映射的 UUID。删除和重新建立连接会生成一个新的连接 ID，因此会产生一个新的连接 ARN。这意味着连接永远不会 ARNs 被重复使用。

新创建的连接处于 `Pending` 状态。需要第三方握手（OAuth 流程）过程才能完成连接的设置并使其从状态切换`Pending`到`Available`状态。完成后，可以将连接与 AWS 服务一起使用，例如 CodePipeline。`Available`

如果要创建与已安装的提供商类型（本地部署）的连接，例如 GitHub企业服务器或 GitLab 自行管理，则可以在连接中使用主机资源。

本地连接的配置如下，并标明了用户帐户或组织之间的差异。
+ **用户帐户：**每个本地第三方用户帐户都安装了连接器应用程序。本地提供商的多个连接可以与一台主机相关联。
+ **Organizations：**每个本地第三方组织都安装了连接器应用程序。对于组织中的本地连接，例如 Organizations for En GitHub terprise Server，您可以为组织中的每个连接创建一个新主机，并确保在网络字段（VPC IDs、子网和安全组 IDs）中为该主机输入相同的信息。 GitHub有关组织如何使用连接的更多详细信息，请参阅[如何 AWS CodeConnections 与组织建立联系](welcome-connections-how-it-works-github-organizations.md)。
+ **全部：**对于每个本地连接，每个 VPC 一次只能与一台主机关联。

在所有情况下，您都需要提供本地服务器的 URL。此外，如果服务器位于私有 VPC 内（即无法通过互联网访问），则需要提供 VPC 信息以及可选的 TLS 证书信息。这些配置 CodeConnections 允许与实例通信，并且由为此主机创建的所有连接共享。例如，对于单个 E GitHub nterprise Server 实例，您可以创建一个由主机表示的单个应用程序。然后，对于用户帐户配置，您可以为该主机创建多个连接，这些连接与您的应用程序安装相对应，如下图所示。否则，对于组织，您可以为该主机创建单个应用程序安装和连接。

下图显示了本地连接如何与用户帐户或组织配合使用。

![\[该图显示了本地提供商的应用程序安装与连接之间的关系。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-flow-host.png)


新创建的主机处于 `Pending` 状态。需要第三方注册流程才能完成主机的设置，并将其从 `Pending` 变为 `Available` 状态。完成此操作后，主机将为 `Available`，可用于连接到已安装的提供程序类型。

有关连接工作流的概述，请参阅 [创建或更新连接的工作流](welcome-connections-workflow.md)。有关已安装提供程序的主机创建工作流程的概述，请参阅[创建或更新主机的工作流程](welcome-hosts-workflow.md)。有关按提供程序类型创建连接的概要步骤，请参阅[使用连接](connections.md)。

# 如何 AWS CodeConnections 与组织建立联系
<a name="welcome-connections-how-it-works-github-organizations"></a>

对于拥有提供商的组织，例如 GitHub 组织，您不能将 GitHub 应用程序安装到多个 GitHub 组织中。通过使用 Github 连接器应用程序，连接与组织进行 1:1 的映射。E GitHub nterprise Server 中的 GitHub 每个组织都应使用独立的连接器应用程序，并且应该有与之关联的连接。

例如，要在同一台 GitHub 服务器上与多个组织合作，必须为每个组织创建单独的连接，并为这些组织安装单独的 GitHub 应用程序。但是，Github方面的目标账户可以是相同的。

# 创建或更新连接的工作流
<a name="welcome-connections-workflow"></a>

创建连接时，您还可以创建或使用现有的连接器应用程序安装来与第三方提供商进行身份验证握手。

连接可能为以下状态之一：
+ `Pending` - `pending` 连接是必须先完成（移动到 `available`）然后才能使用的连接。
+ `Available` - 您可以使用 `available` 连接或将其传递到账户中的其他资源和用户。
+ `Error` - 具有 `error` 状态的连接会自动重试。在变为 `available` 前此连接无法使用。

**工作流程：创建或更新连接，使用 CLI、SDK 或 AWS CloudFormation**

您可以使用 [CreateConnection](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_CreateConnection.html)API 通过 AWS Command Line Interface (AWS CLI)、SDK 或创建连接 CloudFormation。创建后，连接处于 `pending` 状态。您可以使用控制台的 **Set up pending connection (设置待处理的连接)** 选项完成该过程。控制台会提示您创建安装或使用现有安装进行连接。然后，您可以使用控制台完成握手，并选择控制台上的 **Complete connection (完成连接)** 将连接变为 `available` 状态。

**工作流：使用控制台创建或更新连接**

如果要创建与已安装的提供程序类型（例如 GitHub企业服务器）的连接，则需要先创建主机。如果要连接到云提供程序类型（如 Bitbucket），则跳过创建主机并继续创建连接。

要使用控制台创建或更新连接，您可以使用控制台上的 CodePipeline 编辑操作页面来选择您的第三方提供商。控制台会提示您创建安装或使用现有安装进行连接，然后使用控制台创建连接。控制台完成握手并自动将连接从 `pending` 设置为 `available` 状态。



![\[显示创建与第三方提供程序连接的工作流的图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/Connections-flowchart.png)


# 创建或更新主机的工作流程
<a name="welcome-hosts-workflow"></a>

在为已安装的提供商（本地部署）创建连接时，将使用主机资源。

**注意**  
对于使用 GitHub 企业服务器或 GitLab 自行管理的组织，您不会传递可用的主机。您要为组织中的每个连接创建一个新主机，并且必须确保在该主机的网络字段（VPC ID IDs、子网和安全组 IDs）中输入相同的信息。有关更多信息，请参阅 [已安装的提供商支持组织的连接和主机设置](troubleshooting-connections.md#troubleshooting-organization-host)。

主机可具有以下状态：
+ `Pending` - `pending` 主机是指已创建的主机，必须先对其进行设置（移至 `available`），然后才能使用。
+ `Available` - 您可以使用 `available` 主机或将其传递给您的连接。

**工作流程：使用 CLI、SDK 或 AWS CloudFormation创建或更新主机**

您可以使用 [CreateHost](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_CreateHost.html)API 使用 AWS Command Line Interface (AWS CLI)、SDK 或创建主机 CloudFormation。创建后，主机处于 `pending` 状态。您可以使用控制台中的**设置**选项完成该过程。

**工作流程：使用控制台创建或更新主机**

如果您要创建与已安装的提供商类型（例如 GitHub企业服务器或 GitLab 自行管理）的连接，则需要创建主机或使用现有主机。如果要连接到云提供程序类型（如 Bitbucket），则跳过创建主机并继续创建连接。

使用控制台设置主机并将其状态从 `pending` 更改为 `available`。

![\[显示创建与第三方提供程序连接的工作流的图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/Hosts-flowchart.png)


# 中的全球资源 AWS CodeConnections
<a name="welcome-connections-how-it-works-global"></a>

连接是全局资源，这意味着资源将在所有 AWS 区域间复制。

虽然连接 ARN 格式反映了其创建位置的区域名称，但资源不受限于任何区域。创建连接资源的区域是控制连接资源数据更新的区域。控制连接资源数据更新的 API 操作示例包括创建连接、更新安装、删除连接或标记连接。

用于连接的主机资源不是全局可用的资源。您只在创建主机资源的区域中使用主机资源。
+ 您只需创建一次连接，然后您就可以在任何 AWS 区域区域中使用它。
+ 如果创建连接的区域出现问题，则会影响 APIs控制连接资源数据，但您仍然可以在其他所有区域成功使用该连接。
+ 当您在控制台或 CLI 中列出连接资源时，列表会显示所有区域中与您的账户关联的所有连接资源。
+ 当您在控制台或 CLI 中列出主机资源时，列表仅显示选定区域中与您的账户关联的主机资源。
+ 当使用 CLI 列出或查看与关联主机资源的连接时，输出将返回主机 ARN，而不考虑配置的 CLI 区域如何。

## 如何开始使用连接？
<a name="welcome-connections-get-started"></a>

要开始使用通知，请先回顾此处提供的一些实用主题：
+ **学习**关于连接的[概念](concepts-connections.md)。
+ **设置**开始使用连接[所需的资源](setting-up-connections.md)。
+ **开始尝试**使用您的[第一批连接](getting-started-connections.md)，并将其连接到资源。

# 连接概念
<a name="concepts-connections"></a>

如果您了解概念和术语，则可更轻松地设置和使用连接特征。以下是使用开发工具控制台中的连接时要了解的一些概念：

安装  
第三方账户上的 AWS 应用程序实例。安装 Con AWS CodeStar nector 应用程序 AWS 允许访问第三方账户中的资源。只能在第三方提供商的网站上编辑安装。

连接  
一种用于将第三方来源存储库连接到其他 AWS 服务的 AWS 资源。

第三方存储库  
由不属于 AWS的服务或公司提供的存储库。例如，Bitbucket 存储库就是第三方存储库。

提供商类型  
提供要连接到的第三方源存储库的服务或公司。您可以将 AWS 资源连接到外部*提供商类型*。源存储库安装在网络和基础设施上的提供商类型是已安装的提供程序类型。例如， GitHub 企业服务器是一种已安装的提供程序类型。

host  
表示安装第三方提供程序的基础设施的资源。连接使用主机来表示安装第三方提供商的服务器，例如 GitHub 企业服务器。您可以为到该提供程序类型的所有连接创建一个主机。  
当您使用控制台创建与 GitHub 企业服务器的连接时，作为该过程的一部分，控制台会为您创建一个主机资源。

# AWS CodeConnections 支持的提供程序和版本
<a name="supported-versions-connections"></a>

本章提供有关 AWS CodeConnections支持的提供程序和版本的信息。

**Topics**
+ [Azure 支持的提供程序类型 DevOps](#w2aab5c25c22b9)
+ [Bitbucket 支持的提供程序类型](#supported-versions-connections-bitbucket)
+ [GitHub 和 GitHub 企业云支持的提供商类型](#supported-versions-connections-github)
+ [GitHub 企业服务器支持的提供程序类型和版本](#supported-versions-connections-ghes)
+ [GitLab.com 支持的提供商类型](#supported-versions-connections-gitlab)
+ [GitLab 自我管理支持的提供商类型](#supported-versions-connections-gitlab-managed)

## Azure 支持的提供程序类型 DevOps
<a name="w2aab5c25c22b9"></a>

你可以将连接应用程序与 Azure 配合使用 DevOps。

不支持已安装（托管）的提供程序类型，例如 Azure 云托管。

## Bitbucket 支持的提供程序类型
<a name="supported-versions-connections-bitbucket"></a>

你可以将连接应用程序与 Atlassian Bitbucket Cloud 配合使用。

不支持已安装的 Bitbucket 提供程序类型（如 Bitbucket 服务器）。

## GitHub 和 GitHub 企业云支持的提供商类型
<a name="supported-versions-connections-github"></a>

您可以将连接应用程序 GitHub 与 GitHub 企业云一起使用。

## GitHub 企业服务器支持的提供程序类型和版本
<a name="supported-versions-connections-ghes"></a>

您可以将连接应用程序与支持的 GitHub 企业服务器版本一起使用。有关受支持的版本的列表，请参阅 [https://enterprise.github.com/releases/](https://enterprise.github.com/releases/)。

**重要**  
AWS CodeConnections 不支持已弃用的 GitHub 企业服务器版本。例如，由于版本中存在已知问题， AWS CodeConnections 不支持 GitHub 企业服务器版本 2.22.0。要执行连接，请升级到版本 2.22.1 或最新的可用版本。

## GitLab.com 支持的提供商类型
<a name="supported-versions-connections-gitlab"></a>

您可以通过 GitLab .com 使用连接。有关更多信息，请参阅 [创建与的连接 GitLab](connections-create-gitlab.md)。

**重要**  
对连接的支持 GitLab 包括 15.x 版及更高版本。

## GitLab 自我管理支持的提供商类型
<a name="supported-versions-connections-gitlab-managed"></a>

您可以将连接与 GitLab 自行管理安装（适用于企业版或社区版）配合使用。有关更多信息，请参阅 [创建与 GitLab 自我管理的连接](connections-create-gitlab-managed.md)。

# 产品和服务与 AWS CodeConnections
<a name="integrations-connections"></a>

AWS CodeConnections 已与许多 AWS 服务以及合作伙伴产品和服务集成。使用以下部分中的信息来帮助您将连接配置为与您使用的产品和服务集成。

下列相关资源在您使用此服务的过程中会有所帮助。

**Topics**
+ [Amazon CodeGuru Reviewer](#integrations-connections-codeguru)
+ [Amazon Q 开发者版](#integrations-connections-codewhisperer)
+ [亚马逊 SageMaker](#integrations-connections-sagemaker)
+ [AWS App Runner](#integrations-connections-apprunner)
+ [AWS CloudFormation](#integrations-connections-cloudformation)
+ [AWS CodeBuild](#integrations-connections-codebuild)
+ [AWS CodePipeline](#integrations-connections-codepipeline)
+ [服务目录](#integrations-connections-servicecatalog)
+ [AWS Proton](#integrations-connections-proton)

## Amazon CodeGuru Reviewer
<a name="integrations-connections-codeguru"></a>

[CodeGuru Reviewer](https://aws.amazon.com/codeguru/) 是一项用于监控存储库代码的服务。您可以使用连接来关联包含您要查看的代码的第三方存储库。有关学习如何配置 CodeGuru Reviewer 以监控 GitHub 存储库中的源代码以便其创建改进代码的建议的教程，请参阅 *Amazon CodeGuru Reviewer 用户*指南[中的教程：监控 GitHub 存储库中的源代码](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/tutorial-github-reviewer.html)。

## Amazon Q 开发者版
<a name="integrations-connections-codewhisperer"></a>

Amazon Q Developer 是一款基于人工智能的生成式对话助手，可以帮助您理解、构建、扩展和操作 AWS 应用程序。有关更多信息，请参阅《Amazon Q Developer User Guide》**中的 [What is Amazon Q Developer?](https://docs.aws.amazon.com/amazonq/latest/aws-builder-use-ug/what-is.html)。

## 亚马逊 SageMaker
<a name="integrations-connections-sagemaker"></a>

[Amazon SageMaker](https://aws.amazon.com/sagemaker/) 是一项用于构建、训练和部署机器学习语言模型的服务。有关配置 GitHub 存储库连接的教程，请参阅《A *mazon SageMaker 开发者*指南》中的[使用第三方 Git 存储库的SageMaker MLOps 项目演练](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-projects-walkthrough-3rdgit.html)。

## AWS App Runner
<a name="integrations-connections-apprunner"></a>

[AWS App Runner](https://aws.amazon.com/apprunner/) 服务提供了一种快速、简单且经济高效的方式，从源代码或容器镜像直接部署到 AWS 云中可扩展且安全的 Web 应用程序。您可以使用 App Runner 自动集成和交付管道从存储库部署应用程序代码。您可以使用连接将源代码从私有 GitHub 存储库部署到 App Runner 服务。有关更多信息，请参阅 *AWS App Runner 开发人员指南* 中的[源代码存储库提供商](https://docs.aws.amazon.com/apprunner/latest/dg/service-source-code.html)。

## AWS CloudFormation
<a name="integrations-connections-cloudformation"></a>

[AWS CloudFormation](https://aws.amazon.com/cloudformation/)是一项服务，可帮助您对 AWS 资源进行建模和设置，这样您就可以花更少的时间管理这些资源，而将更多的时间集中在运行的应用程序上 AWS。您可以创建一个描述所需的所有 AWS 资源（例如 Amazon EC2 实例或 Amazon RDS 数据库实例）的模板，并 CloudFormation 负责为您预置和配置这些资源。

您可以使用与 Git 同步的连接 CloudFormation 来创建用于监控您的 Git 存储库的同步配置。有关如何使用 Git 同步进行堆栈部署的教程，请参阅*《CloudFormation 用户指南》*中的 “[使用 CloudFormation Git 同步](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/git-sync.html)”。

 有关更多信息 CloudFormation，请参阅《*CloudFormation 命令行界面用户指南》*中的[注册账户以发布 CloudFormation 扩展](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html)。

## AWS CodeBuild
<a name="integrations-connections-codebuild"></a>

[AWS CodeBuild](https://aws.amazon.com/codebuild/)是一项用于构建和测试代码的服务。 CodeBuild 无需预置、管理和扩展自己的生成服务器，而且它为流行的编程语言和构建工具提供了预打包的构建环境。有关使用 CodeBuild 与的连接的更多信息 GitLab，请参阅《*AWS CodeBuild 用户指南*》中的[GitLab连接](https://docs.aws.amazon.com/codebuild/latest/userguide/connections-gitlab.html)。

## AWS CodePipeline
<a name="integrations-connections-codepipeline"></a>

[CodePipeline](https://aws.amazon.com/codepipeline/) 是一种持续交付服务，可用于建模、可视化和自动执行发布软件所需的步骤。您可以使用连接为 CodePipeline 源操作配置第三方存储库。

了解更多：
+ 有关该 CodePipeline 操作，请参阅操作配置参考页面。`SourceConnections`要查看配置参数和示例 JSON/YAML 片段，请参阅*AWS CodePipeline 用户指南[CodeStarSourceConnection](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference-CodestarConnectionSource.html)*中的。
+ 要查看使用第三方源存储库创建管道的**入门** 教程，请参阅[开始使用连接](getting-started-connections.md)。

## 服务目录
<a name="integrations-connections-servicecatalog"></a>

S@@ [ervice Catalog](https://aws.amazon.com/servicecatalog/) 使组织能够创建和管理获准在上 AWS使用的产品目录。

当您授权 AWS 账户 与外部存储库提供商（例如 En GitHub terprise 或 Bitbucket）建立连接时，该连接允许您将 Service Catalog 产品同步到通过第三方存储库管理的模板文件。 GitHub

有关更多信息，请参阅《服务目录*用户指南》中的 “将[服务目录产品同步到来自 GitHub、En GitHub terprise 或 Bitbucket 的模板文件](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/git-synced-sc-products.html)”*。

## AWS Proton
<a name="integrations-connections-proton"></a>

[AWS Proton](https://aws.amazon.com/proton/) 是一项基于云的服务，用于部署到云基础架构。您可以使用连接为 AWS Proton模板中的资源创建指向第三方存储库的链接。有关更多信息，请参阅 *AWS Proton 用户指南* 中的[创建指向存储库的链接](https://docs.aws.amazon.com/proton/latest/userguide/ag-create-repo.html)。

# 设置连接
<a name="setting-up-connections"></a>

完成本部分中的任务，以便准备在开发工具控制台中创建和使用连接功能。

**Topics**
+ [报名参加 AWS](#setting-up-aws-sign-up)
+ [创建并应用具有创建连接的权限的策略](#setting-up-connections-iamuser)

## 报名参加 AWS
<a name="setting-up-aws-sign-up"></a>

### 注册获取 AWS 账户
<a name="sign-up-for-aws"></a>

如果您没有 AWS 账户，请完成以下步骤来创建一个。

**要注册 AWS 账户**

1. 打开[https://portal.aws.amazon.com/billing/注册。](https://portal.aws.amazon.com/billing/signup)

1. 按照屏幕上的说明操作。

   在注册时，将接到电话或收到短信，要求使用电话键盘输入一个验证码。

   当您注册时 AWS 账户，就会创建*AWS 账户根用户*一个。根用户有权访问该账户中的所有 AWS 服务 和资源。作为最佳安全实践，请为用户分配管理访问权限，并且只使用根用户来执行[需要根用户访问权限的任务](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)。

AWS 注册过程完成后会向您发送一封确认电子邮件。您可以随时前往 [https://aws.amazon.com/](https://aws.amazon.com/)并选择 “**我的账户”，查看您当前的账户活动并管理您的账户**。

### 创建具有管理访问权限的用户
<a name="create-an-admin"></a>

注册后，请保护您的安全 AWS 账户 AWS 账户根用户 AWS IAM Identity Center，启用并创建管理用户，这样您就不会使用 root 用户执行日常任务。

**保护你的 AWS 账户根用户**

1.  选择 **Root 用户**并输入您的 AWS 账户 电子邮件地址，以账户所有者的身份登录。[AWS 管理控制台](https://console.aws.amazon.com/)在下一页上，输入您的密码。

   要获取使用根用户登录方面的帮助，请参阅《AWS 登录 用户指南》**中的 [Signing in as the root user](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial)。

1. 为您的根用户启用多重身份验证（MFA）。

   有关说明，请参阅 I [A *M* 用户指南中的为 AWS 账户 根用户启用虚拟 MFA 设备（控制台）](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html)。

**创建具有管理访问权限的用户**

1. 启用 IAM Identity Center。

   有关说明，请参阅**《AWS IAM Identity Center 用户指南》中的[启用 AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html)。

1. 在 IAM Identity Center 中，为用户授予管理访问权限。

   有关使用 IAM Identity Center 目录 作为身份源的教程，请参阅《[用户*指南》 IAM Identity Center 目录中的使用默认设置配置AWS IAM Identity Center 用户*访问权限](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html)。

**以具有管理访问权限的用户身份登录**
+ 要使用您的 IAM Identity Center 用户身份登录，请使用您在创建 IAM Identity Center 用户时发送到您的电子邮件地址的登录 URL。

  有关使用 IAM Identity Center 用户[登录的帮助，请参阅*AWS 登录 用户指南*中的登录 AWS 访问门户](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html)。

**将访问权限分配给其他用户**

1. 在 IAM Identity Center 中，创建一个权限集，该权限集遵循应用最低权限的最佳做法。

   有关说明，请参阅《AWS IAM Identity Center 用户指南》**中的 [Create a permission set](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html)。

1. 将用户分配到一个组，然后为该组分配单点登录访问权限。

   有关说明，请参阅《AWS IAM Identity Center 用户指南》**中的 [Add groups](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html)。

## 创建并应用具有创建连接的权限的策略
<a name="setting-up-connections-iamuser"></a>



**使用 JSON 策略编辑器创建策略**

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在左侧的导航窗格中，选择**策略**。

   如果这是您首次选择**策略**，则会显示**欢迎访问托管式策略**页面。选择**开始使用**。

1. 在页面的顶部，选择**创建策略**。

1. 在**策略编辑器**部分，选择 **JSON** 选项。

1. 输入以下 JSON 策略文档：

   ```
    {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "codeconnections:CreateConnection",
                   "codeconnections:DeleteConnection",
                   "codeconnections:GetConnection",
                   "codeconnections:ListConnections",
                   "codeconnections:GetInstallationUrl",
                   "codeconnections:GetIndividualAccessToken",
                   "codeconnections:ListInstallationTargets",
                   "codeconnections:StartOAuthHandshake",
                   "codeconnections:UpdateConnectionInstallation",
                   "codeconnections:UseConnection"
               ],
               "Resource": [
                   "*"
               ]
           }
       ]
   }
   ```

1. 选择**下一步**。
**注意**  
您可以随时在**可视化**和 **JSON** 编辑器选项卡之间切换。不过，如果您进行更改或在**可视化**编辑器中选择**下一步**，IAM 可能会调整策略结构以针对可视化编辑器进行优化。有关更多信息，请参阅*《IAM 用户指南》*中的[调整策略结构](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_policies.html#troubleshoot_viseditor-restructure)。

1. 在**查看并创建**页面上，为您要创建的策略输入**策略名称**和**描述**（可选）。查看**此策略中定义的权限**以查看策略授予的权限。

1. 选择**创建策略**可保存您的新策略。

# 开始使用连接
<a name="getting-started-connections"></a>

开始使用连接的最简单方法是建立连接，将您的第三方源存储库与您的 AWS 资源关联起来。如果要将管道连接到 AWS 源（例如） CodeCommit，则可以将其作为源操作进行连接。但是，如果您有外部存储库，则必须创建连接以将存储库与管道相关联。在本教程中，您将设置与 Bitbucket 存储库和管道的连接。

在本部分中，您将使用以下连接：
+ AWS CodePipeline：在这些步骤中，您可以使用 Bitbucket 存储库创建管道作为管道源。
+ [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html)：接下来，您将您的 Bitbucket 存储库与 Reviewer 中的 CodeGuru 反馈和分析工具相关联。

**Topics**
+ [先决条件](#getting-started-connections-prerequisites)
+ [步骤 1：编辑源文件](#getting-started-connections-edit)
+ [步骤 2：创建管道](#getting-started-connections-pipeline)
+ [步骤 3：将您的仓库与 CodeGuru Reviewer 关联](#getting-started-connections-analysis)

## 先决条件
<a name="getting-started-connections-prerequisites"></a>

在开始之前，请完成 [设置](setting-up.md) 中的步骤。您还需要一个第三方源存储库来连接到您的 AWS 服务并允许该连接为您管理身份验证。例如，您可能想将 Bitbucket 存储库连接到与源存储库集成的 AWS 服务。
+ 使用您的 Bitbucket 账户创建一个 Bitbucket 存储库。
+ 准备好您的 Bitbucket 凭证。当您使用建立连接时 AWS 管理控制台 ，系统会要求您使用您的 Bitbucket 凭据登录。

## 步骤 1：编辑源文件
<a name="getting-started-connections-edit"></a>

当您创建您的 Bitbucket 存储库时，包含默认的 `README.md` 文件，您要对其进行编辑。

1. 登录到您的 Bitbucket 存储库，然后选择 **Source (源)**。

1. 选择 `README.md` 文件，然后选择页面顶部的 **Edit (编辑)**。删除现有文本并添加以下文本。

   ```
   This is a Bitbucket repository!
   ```

1. 选择**提交**。

   确保 `README.md` 文件位于存储库的根级别。

## 步骤 2：创建管道
<a name="getting-started-connections-pipeline"></a>

在此部分中，您将使用以下操作创建管道：
+ 与您的 Bitbucket 存储库和操作连接的源阶段。
+ 带有生成操作的 AWS CodeBuild 生成阶段。

**使用向导创建管道**

1. 登录 CodePipeline 控制台，网址为[https://console.aws.amazon.com/codepipeline/](https://console.aws.amazon.com/codepipeline/)。

1. 在**欢迎**页面、**入门**页面或**管道**页面上，选择**创建管道**。

1. 在**步骤 1：选择管道设置**的**管道名称**中，输入 **MyBitbucketPipeline**。

1. 在**服务角色**中，选择**新建服务角色**。
**注意**  
如果您选择使用现有的 CodePipeline 服务角色，请确保已`codeconnections:UseConnection`将 IAM 权限添加到您的服务角色策略中。有关 CodePipeline 服务角色的说明，请参阅[为 CodePipeline 服务角色添加权限](https://docs.aws.amazon.com/codepipeline/latest/userguide/security-iam.html#how-to-update-role-new-services)。

1. 在**高级设置**下，保留原定设置值。在**构件存储**中，选择**默认位置**以将默认构件存储（如指定为默认值的 Amazon S3 项目存储桶）用于为管道选择的区域中的管道。
**注意**  
这不是源代码的源存储桶。这是管道的项目存储。每个管道都需要一个单独的构件存储，例如 S3 存储桶。

   选择**下一步**。

1. 在 **Step 2: Add source stage (步骤 2：添加源阶段)** 页面上，添加源阶段：

   1. 对于 **Source provider (源提供商)**，选择 **Bitbucket**。

   1. 在 **Connection (连接)** 下，选择 **Connect to Bitbucket (连接到 Bitbucket)**。

   1. 在 **Connect to Bitbucket (连接到 Bitbucket)** 页面上的 **Connection name (连接名称)** 中，输入要创建的连接的名称。该名称可帮助您稍后识别此连接。

      在 **Bitbucket apps (Bitbucket 应用程序)** 下，选择**Install a new app (安装新应用程序)**。

   1. 在应用程序安装页面上，一条消息显示该 AWS CodeStar 应用程序正在尝试连接到您的 Bitbucket 帐户。选择**授予访问权限**。授权连接后，系统会检测到 Bitbucket 上的存储库，您可以选择将其中一个存储库与您的 AWS 资源相关联。

   1. 将显示新安装的连接 ID。选择**完成连接**。您将返回到 CodePipeline控制台。

   1. 在 **Repository name (存储库名称)** 中，选择 Bitbucket 存储库的名称。

   1. 在 **Branch name (分支名称)** 中，选择存储库的分支。

   1. 确保选择了**在源代码更改时启动管道**选项。

   1. 在 “**输出对象格式**” 下，选择以下选项之一：**CodePipeline 默认**。
      + 选择 “**CodePipeline 默认**” 以对管道中的工件使用默认 zip 格式。
      + 选择**完全克隆**，以包含有关管道中构件的存储库的 Git 元数据。只有 CodeBuild操作才支持此功能。

   选择**下一步**。

1. 在**添加构建阶段**，添加一个构建阶段：

   1. 在**构建提供程序**中，选择 **AWS CodeBuild**。允许**区域**默认为管道区域。

   1. 选择**创建项目**。

   1. 在**项目名称**中，输入此构建项目的名称。

   1. 在**环境映像**中，选择**托管映像**。对于**操作系统**，选择 **Ubuntu**。

   1. 对于**运行时**，选择**标准**。**对于 “**图像**”，选择:5.0 aws/codebuild/standard。**

   1. 对于**服务角色**，选择**新建服务角色**。

   1. 在 **Buildspec (构建规范)** 下，为 **Build specifications (构建规范)** 选择 **Insert build commands (插入构建命令)**。选择 **Switch to editor (切换到编辑器)**，然后将以下内容粘贴到 **Build commands (生成命令)**：

      ```
      version: 0.2
      
      phases:
        install:
          #If you use the Ubuntu standard image 2.0 or later, you must specify runtime-versions.
          #If you specify runtime-versions and use an image other than Ubuntu standard image 2.0, the build fails.
          runtime-versions:
            nodejs: 12
            # name: version
          #commands:
            # - command
            # - command
        pre_build:
          commands:
            - ls -lt
            - cat README.md
        # build:
          #commands:
            # - command
            # - command
        #post_build:
          #commands:
            # - command
            # - command
      #artifacts:
        #files:
          # - location
          # - location
        #name: $(date +%Y-%m-%d)
        #discard-paths: yes
        #base-directory: location
      #cache:
        #paths:
          # - paths
      ```

   1. 选择 “**继续” CodePipeline**。这将返回到 CodePipeline控制台并创建一个使用您的构建命令进行配置的 CodeBuild 项目。构建项目使用服务角色来管理 AWS 服务权限。此步骤可能需要几分钟时间。

   1. 选择**下一步**。

1. 在**步骤 4：添加部署阶段**页面上，选择**跳过部署阶段**，并通过再次选择**跳过**接受警告消息。选择**下一步**。

1. 在**步骤 5：审核**中，选择**创建管道**。

1. 成功创建管道后，将开始管道执行。  
![\[显示已使用 Bitbucket 源成功完成管道的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/pipeline-wizard-bitbucket.png)

1. 在成功构建阶段，选择 **Details (详细信息)**。

   在 “**执行详情**” 下，查看 CodeBuild 生成输出。这些命令将输出 `README.md` 文件内容，如下所示：

   ```
   This is a Bitbucket repository!
   ```  
![\[显示已成功完成构建输出示例的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/pipeline-wizard-bitbucket-output.png)

## 步骤 3：将您的仓库与 CodeGuru Reviewer 关联
<a name="getting-started-connections-analysis"></a>

创建连接后，您可以将该连接用于同一账户中的所有 AWS 资源。例如，您可以将相同的 Bitbucket 连接用于管道中的 CodePipeline 源操作和 CodeGuru Reviewer 中的仓库提交分析。

1. 登录 CodeGuru 审阅者控制台。

1. 在 **CodeGuru Reviewer** 下，选择**关联存储库**。

   此时将打开一页式向导。

1. 在 **Select source provider (选择源提供程序)** 下，选择 **Bitbucket**。

1. 在 “**Connect to Bitbucket（使用 AWS CodeConnections）**” 下，选择您为管道创建的连接。

1. 在 **Repository location (存储库位置)** 下，选择 Bitbucket 存储库的名称，然后选择 **Associate (关联)**。

   您可以继续设置代码审阅。有关更多信息，请参阅 A *mazon Reviewer 用户指南中的连接到 Bitbucket 以将存储库与 CodeGuru Re CodeGuru viewer* [关联起来](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/create-bitbucket-association.html)。

# 使用连接
<a name="connections"></a>

*连接*是您用于将 AWS 资源连接到外部代码存储库的配置。每个连接都是可以提供给服务的资源，例如用于 AWS CodePipeline 连接到第三方存储库（例如 Bitbucket）。例如，您可以在中添加连接， CodePipeline 以便在对第三方代码存储库进行代码更改时，它会触发您的管道。您也可以将 AWS 资源连接到已安装的提供程序类型，例如 GitHub 企业服务器。

**注意**  
对于 GitHub 或 E GitHub nterprise Server 中的组织，您不能将 GitHub 应用程序安装到多个 GitHub 组织中。应用程序到 GitHub 组织的映射是 1:1 的映射。一个组织一次只能有一个应用程序；但是，你可以有多个连接指向同一个应用程序。有关更多详细信息，请参阅[如何 AWS CodeConnections 与组织建立联系](welcome-connections-how-it-works-github-organizations.md)。

如果要创建与已安装的提供程序类型（例如 En GitHub terprise Server）的连接，则控制台会为您创建主机。主机是您创建的资源，用于表示安装提供程序的服务器。有关更多信息，请参阅 [使用主机](connections-hosts.md)。

创建连接时，您可以使用控制台中的向导在第三方提供商处安装连接应用程序，并将其与新连接相关联。如果您已经安装了 应用程序，则可以使用它。

**注意**  
要在欧洲（米兰）使用连接 AWS 区域，您必须：  
安装区域特定的应用程序
启用该区域
这一特定于区域的应用程序支持欧洲地区（米兰）区域中的连接。该应用程序在第三方提供商网站上发布，与支持其他区域的连接的现有应用程序是分开的。安装此应用程序，即表示您授权第三方提供商仅与该区域的服务共享您的数据，并且您可以随时通过卸载该应用程序来撤消权限。  
除非您启用区域，否则该服务不会处理或存储您的数据。启用此区域，即表示您授予我们的服务处理和存储您的数据的权限。  
即使未启用该区域，如果区域特定的应用程序仍保持安装状态，第三方提供商也仍可以与我们的服务共享您的数据，因此，请务必在禁用该区域后立即卸载该应用程序。有关更多信息，请参阅[启用区域](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable)。

有关连接的更多信息，请参阅 [AWS CodeConnections API 参考](https://docs.aws.amazon.com/codeconnections/latest/APIReference/Welcome.html)。有关 Bitbucket CodePipeline 源操作的更多信息，请参阅*AWS CodePipeline 用户指南[CodestarConnectionSource](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference-CodestarConnectionSource.html)*中的。

要为你的 AWS Identity and Access Management (IAM) 用户或角色创建或关联具有使用连接所需权限的策略，请参阅[AWS CodeConnections 权限参考](security-iam.md#permissions-reference-connections)。根据您的 CodePipeline 服务角色的创建时间，您可能需要将其权限更新为支持 AWS CodeConnections。有关说明，请参阅*AWS CodePipeline 用户指南*中的[更新服务角色](https://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-update-role-new-services.html)。

**Topics**
+ [创建连接](connections-create.md)
+ [创建与 Azure 的连接 DevOps](connections-create-azure.md)
+ [创建到 Bitbucket 的连接](connections-create-bitbucket.md)
+ [创建与的连接 GitHub](connections-create-github.md)
+ [创建与 GitHub 企业服务器的连接](connections-create-gheserver.md)
+ [创建与的连接 GitLab](connections-create-gitlab.md)
+ [创建与 GitLab 自我管理的连接](connections-create-gitlab-managed.md)
+ [更新挂起的连接](connections-update.md)
+ [列出连接](connections-list.md)
+ [删除连接](connections-delete.md)
+ [为连接资源添加标签](connections-tag.md)
+ [查看连接详细信息](connections-view-details.md)
+ [与共享连接 AWS 账户](connections-share.md)

# 创建连接
<a name="connections-create"></a>

您可以创建与以下第三方提供程序类型的连接：
+ 要创建到 Bitbucket 的连接，请参阅[创建到 Bitbucket 的连接](connections-create-bitbucket.md)。
+ 要创建与我们的 GitHub 企业云 GitHub 的连接，请参阅[创建与的连接 GitHub](connections-create-github.md)。
+ 要创建与 GitHub 企业服务器的连接，包括创建主机资源，请参阅[创建与 GitHub 企业服务器的连接](connections-create-gheserver.md)。
+ 要创建与的连接 GitLab，请参阅[创建与的连接 GitLab](connections-create-gitlab.md)。
+ 要创建与 Azure 的连接 DevOps，请参阅[创建与 Azure 的连接 DevOps](connections-create-azure.md)。

**注意**  
从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

# 创建与 Azure 的连接 DevOps
<a name="connections-create-azure"></a>

你可以使用 AWS 管理控制台 或 AWS Command Line Interface (AWS CLI) 来创建与 Azure 上托管的存储库的连接 DevOps。

开始前的准备工作：
+ 你必须已经在 Azure 中创建了一个帐户 DevOps。
+ 你必须已经在 Azure DevOps 门户上创建了项目和 Azure 存储库。您的账户必须具有仓库的管理员访问权限。
**注意**  
你可以创建与 Azure DevOps 存储库的连接。不支持已安装（在主机上）Azure 提供程序类型，例如 Azure 云托管。请参阅[AWS CodeConnections 支持的提供程序和版本](supported-versions-connections.md)。

**注意**  
连接只能访问用于创建连接的账户所拥有的存储库。

**Topics**
+ [创建与 Azure 的连接 DevOps （控制台）](#connections-create-azure-console)
+ [创建与 Azure 的连接 DevOps (CLI)](#connections-create-azure-cli)

## 创建与 Azure 的连接 DevOps （控制台）
<a name="connections-create-azure-console"></a>

你可以使用控制台创建与 Azure 的连接 DevOps。

**注意**  
从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

**步骤 1：创建连接**

1. 登录并打开 AWS 开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。 AWS 管理控制台

1. 选择**设置 > 连接**，然后选择**创建连接**。

1. 要创建与 Azure DevOps 存储库的连接，**请在 “选择提供者”** 下选择 **Azure DevOps**。在**连接名称**中，输入要创建的连接的名称。选择 “**连接到 Azure**” DevOps，然后继续执行步骤 2。  
![\[显示为 Azure 选择的连接选项的控制台屏幕截图 DevOps。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-azure-updated.png)

**第 2 步：连接到 Azure DevOps**

1. 在 “**连接到 Azure DevOps** 设置” 页面上，将显示你的连接名称。

   

1. 如果显示 Microsoft 的登录页面，请使用您的凭证登录，然后选择继续。

   如果这是你第一次 DevOps 从创建到 Azure 的连接，则可能需要授予权限 AWS 管理控制台。  
![\[在创建与 Azure 的连接时，Microsoft 权限会为首次使用的用户请求屏幕截图 DevOps。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/permissions_request_azure.png)

1. 选择 **Accept (接受)**。

1. 在连接页面上，将显示新安装的连接 ID。

1. 选择 **Connect** 以建立连接。创建的连接显示在连接列表中，现在处于可用状态并可以使用。

## 创建与 Azure 的连接 DevOps (CLI)
<a name="connections-create-azure-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 来创建连接。

为此，请使用 **create-connection** 命令。

**重要**  
默认情况下，通过 AWS CLI 或创建的连接 AWS CloudFormation 处于`PENDING`状态。使用 CLI 或创建连接后 CloudFormation，使用控制台编辑连接以使其处于状态`AVAILABLE`。

**创建与 Azure 的连接 DevOps**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-connection**命令，`--connection-name`为您的连接指定`--provider-type`和。在此示例中，第三方提供方名称为 `AzureDevOps`，指定的连接名称为 `MyConnection`。

   ```
   aws codeconnections create-connection --provider-type AzureDevOps --connection-name MyConnection
   ```

   如果成功，该命令将返回类似以下内容的连接 ARN 信息。

   ```
   {
       "ConnectionArn": "arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f"
   }
   ```

1. 使用控制台完成连接。有关更多信息，请参阅 [更新挂起的连接](connections-update.md)。

# 创建到 Bitbucket 的连接
<a name="connections-create-bitbucket"></a>

您可以使用 AWS 管理控制台 或 AWS Command Line Interface (AWS CLI) 来创建与 bitbucket.org 上托管的存储库的连接。

开始前的准备工作：
+ 您必须已使用 Bitbucket 创建有账户。
+ 您必须已在 bitbucket.org 上创建了一个代码存储库。
**注意**  
您可以创建到 Bitbucket Cloud 存储库的连接。不支持已安装的 Bitbucket 提供程序类型（如 Bitbucket 服务器）。请参阅[AWS CodeConnections 支持的提供程序和版本](supported-versions-connections.md)。

**注意**  
连接只能访问用于创建连接的账户所拥有的存储库。  
如果要将应用程序安装在 Bitbucket 工作区中，则需要 **Administer workspace**（管理工作区）权限。否则，安装应用程序的选项将不会显示。

**Topics**
+ [创建到 Bitbucket 的连接（控制台）](#connections-create-bitbucket-console)
+ [创建到 Bitbucket 的连接 (CLI)](#connections-create-bitbucket-cli)

## 创建到 Bitbucket 的连接（控制台）
<a name="connections-create-bitbucket-console"></a>

您可以使用控制台创建与 Bitbucket 的连接。

**注意**  
从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

**步骤 1：创建连接**

1. 登录并打开 AWS 开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。 AWS 管理控制台

1. 选择**设置 > 连接**，然后选择**创建连接**。

1. 要创建到 Bitbucket 存储库的连接，请在 **Select a provider (选择提供商)** 下，选择 **Bitbucket**。在 **Connection name (连接名称)** 中，输入要创建的连接的名称。选择 **Connect to Bitbucket (连接到 Bitbucket)**，然后继续执行步骤 2。  
![\[显示为 Bitbucket 选择的连接选项的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-bitbucket.png)

**步骤 2：连接到 Bitbucket**

1. 在 **Connect to Bitbucket (连接到 Bitbucket)** 设置页面上，将显示您的连接名称。

   在 **Bitbucket 应用程序**下，选择一个应用程序安装，或者选择**安装新应用程序**来创建一个应用程序安装。
**注意**  
您只为每个 Bitbucket 工作区或账户安装一次应用程序。如果您已经安装了 Bitbucket 应用程序，请选择它，然后移至本部分内容中的最后一步。  
![\[显示“Connect to Bitbucket (连接到 Bitbucket)”对话框以及安装新应用程序按钮的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/newreview-source-wizard-bitbucket.png)

1. 如果显示 Bitbucket 的登录页面，请使用您的凭证登录，然后选择继续。

1. 在应用程序安装页面上，一条消息显示该 AWS CodeStar 应用程序正在尝试连接到您的 Bitbucket 帐户。

   如果您使用的是 Bitbucket 工作区，请更改工作区的 **Authorize for**（授权）选项。只有您拥有管理员访问权限的工作区才会显示。

   选择**授予访问权限**。  
![\[显示连接器访问请求的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/bitbucket-access-popup.png)

1. 在 **Bitbucket 应用程序**中，将显示新安装的连接 ID。选择**连接**。创建的连接将显示在连接列表中。  
![\[显示连接器访问请求的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/create-connection-bitbucket-app-ID.png)

## 创建到 Bitbucket 的连接 (CLI)
<a name="connections-create-bitbucket-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 来创建连接。

为此，请使用 **create-connection** 命令。

**重要**  
默认情况下，通过 AWS CLI 或创建的连接 AWS CloudFormation 处于`PENDING`状态。使用 CLI 或创建连接后 CloudFormation，使用控制台编辑连接以使其处于状态`AVAILABLE`。

**要创建到 Bitbucket 的连接**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-connection**命令，`--connection-name`为您的连接指定`--provider-type`和。在此示例中，第三方提供方名称为 `Bitbucket`，指定的连接名称为 `MyConnection`。

   ```
   aws codeconnections create-connection --provider-type Bitbucket --connection-name MyConnection
   ```

   如果成功，该命令将返回类似以下内容的连接 ARN 信息。

   ```
   {
       "ConnectionArn": "arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f"
   }
   ```

1. 使用控制台完成连接。有关更多信息，请参阅 [更新挂起的连接](connections-update.md)。

# 创建与的连接 GitHub
<a name="connections-create-github"></a>

您可以使用 AWS 管理控制台 或 AWS Command Line Interface (AWS CLI) 来创建与的连接 GitHub。

开始前的准备工作：
+ 您必须已经使用创建了账户 GitHub。
+ 您必须已创建第三方代码存储库。

**注意**  
要创建连接，您必须是 GitHub 组织所有者。对于不属于组织的存储库，您必须是存储库拥有者。

**Topics**
+ [创建与 GitHub （控制台）的连接](#connections-create-github-console)
+ [创建与 GitHub (CLI) 的连接](#connections-create-github-cli)

## 创建与 GitHub （控制台）的连接
<a name="connections-create-github-console"></a>



您可以使用控制台创建与的连接 GitHub。

**注意**  
从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

1. 登录并打开开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。 AWS 管理控制台

1. 选择**设置 > 连接**，然后选择**创建连接**。

1. 要创建与 GitHub 或 GitHub 企业云存储库的连接，**请在选择提供商**下选择**GitHub**。在**连接名称**中，输入要创建的连接的名称。选择 **Connect t** o GitHub，然后继续执行步骤 2。  
![\[显示为 Bitbucket 选择的连接选项的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/github-conn.png)

**要创建与的连接 GitHub**

1. 在 **“GitHub 连接设置”** 下，您的连接名称显示在 “**连接名称**” 中。选择 **Connect to GitHub**。此时将显示访问请求页面。  
![\[显示 GitHub 账户访问页面的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/github-conn-access.png)

1. 选择 “**为 AWS 连接器授权” GitHub**。连接页面将显示并显示 “**GitHub 应用程序**” 字段。  
![\[控制台屏幕截图显示了带有 “ GitHub 应用程序” 字段的初始 GitHub 连接页面。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/github-conn-access-app.png)

1. 在 “**GitHub 应用程序**” 下，选择应用程序安装或选择 “**安装新应用程序**” 来创建一个。
**注意**  
您可以为与特定提供程序的所有连接安装一个应用程序。如果您已经安装了 GitHub 应用程序 AWS 连接器，请选择它并跳过此步骤。

1. 在 “安装**AWS 连接器 GitHub**” 页面上，选择要在其中安装应用程序的帐户。  
![\[显示 GitHub安装 AWS 连接器页面的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/github-conn-access-app-install1.png)
**注意**  
您只需为每个 GitHub 账户安装一次该应用程序。如果您之前已安装了应用程序，则可以选择**配置**，继续进入应用程序安装的修改页面，也可以使用后退按钮返回到控制台。

1. 在 “**安装 AWS 连接器 GitHub**” 页面上，保留默认值，然后选择 “**安装**”。  
![\[控制台屏幕截图显示了第二个用于 GitHub安装的 AWS 连接器页面。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/github-conn-access-app-install2.png)

   完成此步骤后，中可能会显示更新的权限页面 GitHub。

1. 如果显示的页面显示 GitHub 应用程序的 Conn AWS ector 权限已更新，请选择 “**接受新权限**”。  
![\[控制台屏幕截图显示了用于 GitHub 更新权限的 AWS 连接器页面。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/accept-new-permissions.png)

1. 您将返回到 “**Connect to GitHub**” 页面。新安装的连接 ID 会显示在 “**GitHub应用程序**” 中。选择**连接**。

### 查看您创建的连接
<a name="connections-create-github-console-view"></a>
+ 创建的连接将显示在连接列表中。  
![\[显示已成功创建连接的连接列表的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-ghe-complete.png)

## 创建与 GitHub (CLI) 的连接
<a name="connections-create-github-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 创建与的连接 GitHub。

为此，请使用 **create-connection** 命令。

**重要**  
默认情况下，通过 AWS CLI 或创建的连接 AWS CloudFormation 处于`PENDING`状态。使用 CLI 或创建连接后 CloudFormation，使用控制台编辑连接以使其处于状态`AVAILABLE`。

**要创建与的连接 GitHub**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-connection**命令，`--connection-name`为您的连接指定`--provider-type`和。在此示例中，第三方提供方名称为 `GitHub`，指定的连接名称为 `MyConnection`。

   ```
   aws codeconnections create-connection --provider-type GitHub --connection-name MyConnection
   ```

   如果成功，该命令将返回类似以下内容的连接 ARN 信息。

   ```
   {
       "ConnectionArn": "arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f"
   }
   ```

1. 使用控制台完成连接。有关更多信息，请参阅 [更新挂起的连接](connections-update.md)。

# 创建与 GitHub 企业服务器的连接
<a name="connections-create-gheserver"></a>

您可以使用连接将您的 AWS 资源与第三方存储库关联。您可以使用 AWS 管理控制台 或 AWS Command Line Interface (AWS CLI) 来创建与 GitHub 企业服务器的连接。

连接仅提供对 GitHub 企业服务器帐户拥有的存储库的访问权限，该帐户在连接创建期间用于授权安装 GitHub应用程序。

开始前的准备工作：
+ 您必须已经有一个 GitHub 企业服务器实例和一个存储库。
+ 您需要是 GitHub 企业服务器实例的管理员才能创建 GitHub 应用程序和创建主机资源，如本节所示。

**重要**  
在为 GitHub 企业服务器设置主机时，会为您创建一个 Webhook 事件数据的 VPC 终端节点。如果您在 2020 年 11 月 24 日之前创建了主机，并且想要使用 VPC PrivateLink Webhook 终端节点，则必须先[删除](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-delete.html)主机，然后再[创建](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-create.html)新主机。

**注意**  
对于使用 GitHub 企业服务器或 GitLab 自行管理的组织，您不会传递可用的主机。您要为组织中的每个连接创建一个新主机，并且必须确保在该主机的网络字段（VPC ID IDs、子网和安全组 IDs）中输入相同的信息。有关更多信息，请参阅 [已安装的提供商支持组织的连接和主机设置](troubleshooting-connections.md#troubleshooting-organization-host)。

**Topics**
+ [创建与 GitHub 企业服务器（控制台）的连接](connections-create-gheserver-console.md)
+ [创建与 GitHub 企业服务器 (CLI) 的连接](connections-create-gheserver-cli.md)

# 创建与 GitHub 企业服务器（控制台）的连接
<a name="connections-create-gheserver-console"></a>

要创建 GitHub 企业服务器连接，您需要提供 GitHub 企业服务器安装位置的信息，并使用您的 GitHub 企业凭据授权创建连接。

**注意**  
从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

**Topics**
+ [创建您的 GitHub 企业服务器连接（控制台）](#connections-create-gheserver-connection)

## 创建您的 GitHub 企业服务器连接（控制台）
<a name="connections-create-gheserver-connection"></a>

要创建与 GitHub 企业服务器的连接，请准备好服务器 URL 和 GitHub 企业凭据。<a name="proc-host-create-console-steps"></a>

**创建主机**

1. 登录并打开 AWS 开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。 AWS 管理控制台

1. 在 **Host (主机)** 选项卡上，选择 **Create host (创建主机)**。

1. 在 **Host name (产品名称)** 中，输入您要用于主机的名称。

1. 在**选择提供程序**中，选择以下选项之一：
   + **GitHub 企业服务器**
   + **GitLab 自我管理**

1. 在 **URL** 中，输入安装提供程序的基础设施的终端节点。

1. 如果您的服务器是在 Amazon VPC 中配置的，并且您想要连接 VPC，请选择 **Use a VPC (使用 VPC)**。否则，请选择 **No VPC (无 VPC)**。

1. 如果您已将实例启动到 Amazon VPC 中，并且想要连接 VPC，请选择 **Use a VPC (使用 VPC)** 并完成以下操作。

   1. 在 **VPC ID** 中，选择您的 VPC ID。确保为基础设施选择安装实例的 VPC，或选择通过 VPN 或 Direct Connect 访问实例的 VPC。

   1. 如果您配置了私有 VPC，并且您已将实例配置为使用非公有证书颁发机构执行 TLS 验证，请在 **TLS 证书**中输入证书 ID。TLS 证书值为证书的公有密钥。

1. 选择 **Create host (创建主机)**。

1. 显示主机详细信息页面后，主机状态随着主机的创建而发生变化。
**注意**  
如果您的主机设置包括 VPC 配置，请等待几分钟时间来预置主机网络组件。

   等待您的主机进入 **Pending (待处理)** 状态，然后完成安装。有关更多信息，请参阅 [设置待处理的主机](connections-host-setup.md)。  
![\[显示主机处于待处理状态的主机详细信息的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-host-pending.png)

**步骤 2：创建与 GitHub 企业服务器（控制台）的连接**

1. 登录 AWS 管理控制台 并打开开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。

1. 选择**设置 > 连接**，然后选择**创建连接**。

1. 要创建与已安装的 GitHub 企业服务器存储库的连接，请选择**GitHub 企业服务器**。

**Connect 连接到 GitHub 企业服务器**

1. 在 **Connection name (连接名称)**，输入您的连接的名称。  
![\[显示不带 VPC 的 Create host settings (创建主机设置) 页面的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-ghes-screen.png)

1. 在 **URL** 中，输入服务器的终端节点。
**注意**  
如果所提供的 URL 已用于为连接设置 GitHub企业服务器，则系统将提示您选择之前为该终端节点创建的主机资源 ARN。

1. （可选）如果您已将服务器启动到 Amazon VPC 中，并且想要连接 VPC，请选择**使用 VPC** 并完成以下操作。
**注意**  
对于使用 GitHub 企业服务器或 GitLab 自行管理的组织，您不会传递可用的主机。您要为组织中的每个连接创建一个新主机，并且必须确保在该主机的网络字段（VPC ID IDs、子网和安全组 IDs）中输入相同的信息。有关更多信息，请参阅 [已安装的提供商支持组织的连接和主机设置](troubleshooting-connections.md#troubleshooting-organization-host)。

   1. 在 **VPC ID** 中，选择您的 VPC ID。请务必为安装 GitHub 企业服务器实例的基础设施选择 VPC，或者选择可通过 VPN 或 Direct Connect 访问 GitHub企业服务器实例的 VPC。

   1. 在 **Subnet ID (子网 ID)** 下，选择 **Add (添加)**。在字段中，选择要用于主机的子网 ID。您可以选择最多 10 个子网。

      请务必为安装 GitHub 企业服务器实例的基础架构选择子网，或者选择可以通过 VPN 或 Direct Connect 访问已安装的 GitHub 企业服务器实例的子网。

   1. 在 “**安全组**” 下 IDs，选择 “**添加**”。在字段中，选择要用于主机的安全组。您最多可以选择 10 个安全组。

      请务必为安装 GitHub 企业服务器实例的基础架构选择安全组，或者选择可以通过 VPN 或 Direct Connect 访问已安装的 GitHub 企业服务器实例的安全组。

   1. 如果您配置了私有 VPC，并且已将 GitHub 企业服务器实例配置为使用非公共证书颁发机构执行 TLS 验证，请在 **TLS 证书**中输入您的证书 ID。TLS 证书值应该是证书的公有密钥。  
![\[控制台屏幕截图显示了 VPC 选项的 “创建 GitHub 企业服务器连接” 页面。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-ghes-screen-vpc.png)

1. 选择 “**连接到 GitHub 企业服务器”**。创建的连接显示为**待处理**状态。将使用您提供的服务器信息为连接创建一个主机资源。对于主机名，将使用 URL。

1.  选择**更新待处理的连接**。  
![\[控制台屏幕截图显示待处理的 GitHub 企业服务器连接页面。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-ghes-pending.png)

1. 如果出现提示，请在 GitHub 企业登录页面上使用您的 GitHub企业凭据登录。

1. 在**创建 GitHub 应用程序**页面上，为您的应用程序选择一个名称。  
![\[显示应用创建页面的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-ghes-app-name.png)

1. 在 GitHub 授权页面上，选择**授权**<app-name>。  
![\[显示应用程序授权页面的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-ghes-app-authorize.png)

1. 在应用程序安装页面上，有一条消息显示连接器应用程序已准备好安装。如果您有多个组织，系统可能会提示您选择要安装该应用程序的组织。

   选择要安装应用程序的存储库设置。选择**安装**。  
![\[显示应用程序授权页面的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-ghes-app-install.png)

1. 连接页面显示已创建的连接处于 **Available (可用)** 状态。

# 创建与 GitHub 企业服务器 (CLI) 的连接
<a name="connections-create-gheserver-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 来创建连接。

为此，请使用 **create-host** 和 **create-connection** 命令。

**重要**  
默认情况下，通过 AWS CLI 或创建的连接 AWS CloudFormation 处于`PENDING`状态。使用 CLI 或创建连接后 CloudFormation，使用控制台编辑连接以使其处于状态`AVAILABLE`。

**步骤 1：为 GitHub 企业服务器创建主机 (CLI)**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-host**命令，`--provider-endpoint`为您的连接指定`--name``--provider-type`、和。在此示例中，第三方提供程序名称为 `GitHubEnterpriseServer`，终端节点为 `my-instance.dev`。

   ```
   aws codeconnections create-host --name MyHost --provider-type GitHubEnterpriseServer --provider-endpoint "https://my-instance.dev"
   ```

   如果成功，该命令将返回类似以下内容的主机 Amazon 资源名称（ARN）信息。

   ```
   {
       "HostArn": "arn:aws:codeconnections:us-west-2:account_id:host/My-Host-28aef605"
   }
   ```

   完成此步骤后，主机处于 `PENDING` 状态。

1. 使用控制台完成主机设置并将主机变为 `Available` 状态。有关更多信息，请参阅 [设置待处理的主机](connections-host-setup.md)。

**步骤 2：在控制台中设置待处理的主机**

1. 登录 AWS 管理控制台 并打开开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。

1. 使用控制台完成主机设置并将主机变为 `Available` 状态。请参阅[设置待处理的主机](connections-host-setup.md)。

**步骤 3：为 GitHub 企业服务器创建连接 (CLI)**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-connection**命令，`--connection-name`为您的连接指定`--host-arn`和。

   ```
   aws codeconnections create-connection --host-arn arn:aws:codeconnections:us-west-2:account_id:host/MyHost-234EXAMPLE --connection-name MyConnection
   ```

   如果成功，该命令将返回类似以下内容的连接 ARN 信息。

   ```
   {
       "ConnectionArn": "arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad"
   }
   ```

1. 使用控制台设置待处理的连接。有关更多信息，请参阅 [更新挂起的连接](connections-update.md)。

**步骤 4：在控制台中完成与 GitHub 企业服务器的连接**

1. 登录 AWS 管理控制台 并打开开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。

1. 使用控制台设置待处理的连接，并将连接移到 `Available` 状态。有关更多信息，请参阅 [更新挂起的连接](connections-update.md)。

# 创建与的连接 GitLab
<a name="connections-create-gitlab"></a>

您可以使用 AWS 管理控制台 或 AWS Command Line Interface (AWS CLI) 来创建与 gitlab.com 上托管的存储库的连接。

**注意**  
在中授权安装此连接 GitLab，即表示您授予我们的服务权限以处理您的数据，并且您可以随时通过卸载应用程序来撤消这些权限。

开始前的准备工作：
+ 您必须已经使用创建了账户 GitLab。
**注意**  
连接只为用于创建并授权连接的账户提供访问权限。
**注意**  
您可以在其中拥有**所有者**角色的连接中创建连接 GitLab，然后可以将该连接与包含诸如之类的资源的存储库一起使用 CodePipeline。对于群组中的仓库，您无需成为群组拥有者。

**Topics**
+ [创建与 GitLab （控制台）的连接](#connections-create-gitlab-console)
+ [创建与 GitLab (CLI) 的连接](#connections-create-gitlab-cli)

## 创建与 GitLab （控制台）的连接
<a name="connections-create-gitlab-console"></a>

您可以使用控制台创建连接。

**注意**  
从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

**步骤 1：创建连接**

1. 登录 AWS 管理控制台，然后打开 AWS 开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。

1. 选择**设置**，然后选择**连接**选项卡。选择**创建连接**。

1. 要创建与 GitLab 存储库的连接，**请在 “选择提供者”** 下选择**GitLab**。在**连接名称**中，输入要创建的连接的名称。选择 **Connect t GitLab** o。  
![\[显示所选连接选项的控制台屏幕截图 GitLab。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-gitlab.png)

1.  GitLab 显示的登录页面时，使用您的凭据登录，然后选择**登录。**

1. 将显示一个授权页面，其中包含一条消息，请求授权连接访问您的 GitLab 账户。

   选择**授权**。  
![\[屏幕截图显示了授权您的 GitLab 账户连接的消息。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/gitlab-authorization.png)

1. 浏览器返回到连接控制台页面。在 “**创建 GitLab 连接**” 下，新连接显示在 “**连接名称”** 中。

1. 选择 **Connect t GitLab** o。

   成功创建连接后，将显示成功横幅。连接详细信息显示在**连接设置**页面上。

## 创建与 GitLab (CLI) 的连接
<a name="connections-create-gitlab-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 来创建连接。

为此，请使用 **create-connection** 命令。

**重要**  
默认情况下，通过 AWS CLI 或创建的连接 AWS CloudFormation 处于`PENDING`状态。使用 CLI 或创建连接后 CloudFormation，使用控制台编辑连接以使其处于状态`AVAILABLE`。

**要创建与的连接 GitLab**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-connection**命令，`--connection-name`为您的连接指定`--provider-type`和。在此示例中，第三方提供方名称为 `GitLab`，指定的连接名称为 `MyConnection`。

   ```
   aws codeconnections create-connection --provider-type GitLab --connection-name MyConnection
   ```

   如果成功，该命令将返回类似以下内容的连接 ARN 信息。

   ```
   {
       "ConnectionArn": "arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f"
   }
   ```

1. 使用控制台完成连接。有关更多信息，请参阅 [更新挂起的连接](connections-update.md)。

# 创建与 GitLab 自我管理的连接
<a name="connections-create-gitlab-managed"></a>

您可以使用自行管理安装为 GitLab 企业版或 GitLab 社区版创建连接。

您可以使用 AWS 管理控制台 或 AWS Command Line Interface (AWS CLI) 创建用于 GitLab 自我管理的连接和主机。

**注意**  
通过在 GitLab 自我管理模式下授权此连接应用程序，即表示您授予我们的服务权限以处理您的数据，并且您可以随时通过卸载该应用程序来撤消这些权限。

在创建 GitLab 自我管理连接之前，必须创建用于连接的主机，详见以下步骤。有关已安装提供程序的主机创建工作流程的概述，请参阅[创建或更新主机的工作流程](welcome-hosts-workflow.md)。

（可选）您可以为主机配置 VPC。有关主机资源的网络和 VPC 配置的更多信息，请参阅[（可选）先决条件：您的连接的网络或 Amazon VPC 配置](connections-host-create.md#connections-create-host-prereq)和[对主机的 VPC 配置进行故障排查](troubleshooting-connections.md#troubleshooting-connections-host-vpc)中的 VPC 先决条件。

开始前的准备工作：
+ 您必须已经使用自己管理安装的 GitLab 企业版或 GitLab 社区版创建了帐户， GitLab 并且安装了企业版或社区版。有关更多信息，请参阅[https://docs.gitlab.com/ee/订阅/self\$1managed/](https://docs.gitlab.com/ee/subscriptions/self_managed/)。
**注意**  
连接只为用于创建并授权连接的账户提供访问权限。
**注意**  
您可以创建与拥有**所有者**角色的存储库的连接 GitLab，然后该连接可以与资源一起使用，例如 CodePipeline。对于群组中的仓库，您无需成为群组拥有者。
+ 您必须已经创建了仅具有以下范围缩小权限的 GitLab 个人访问令牌 (PAT)：，。`api` `admin_mode`有关更多信息，请参阅 [https://docs.gitlab.com/ee/user/profile/personal\$1access\$1tokens.html](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html)。您必须是管理员才能创建和使用 PAT。
**注意**  
您的 PAT 用于对主机进行授权，不会以其它方式存储或由连接使用。要设置主机，您可以创建一个临时 PAT，然后在设置主机之后，可以删除 PAT。

**注意**  
对于使用 GitHub 企业服务器或 GitLab 自行管理的组织，您不会传递可用的主机。您要为组织中的每个连接创建一个新主机，并且必须确保在该主机的网络字段（VPC ID IDs、子网和安全组 IDs）中输入相同的信息。有关更多信息，请参阅 [已安装的提供商支持组织的连接和主机设置](troubleshooting-connections.md#troubleshooting-organization-host)。

**Topics**
+ [创建与 GitLab 自我管理（控制台）的连接](#connections-create-gitlab-managed-console)
+ [创建与 GitLab 自我管理 (CLI) 的连接](#connections-create-gitlab-managed-cli)

## 创建与 GitLab 自我管理（控制台）的连接
<a name="connections-create-gitlab-managed-console"></a>

使用这些步骤在控制台中创建主机和 GitLab 自我管理连接。有关在 VPC 中设置主机的注意事项，请参阅[（可选）先决条件：您的连接的网络或 Amazon VPC 配置](connections-host-create.md#connections-create-host-prereq)。

**注意**  
从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

**注意**  
您可以为单个 GitLab 自管理安装创建主机，然后可以管理与该主机的一个或多个 GitLab 自管理连接。

**步骤 1：创建主机**

1. 登录 AWS 管理控制台，然后打开 AWS 开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。

1. 在 **Host (主机)** 选项卡上，选择 **Create host (创建主机)**。

1. 在 **Host name (产品名称)** 中，输入您要用于主机的名称。

1. 在**选择提供商**中，选择**GitLab自我管理**。

1. 在 **URL** 中，输入安装提供程序的基础设施的终端节点。

1. 如果您的服务器是在 Amazon VPC 中配置的，并且您想要连接 VPC，请选择 **Use a VPC (使用 VPC)**。否则，请选择 **No VPC (无 VPC)**。

1. （可选）如果您已将主机启动到 Amazon VPC 中，并且想要连接 VPC，请选择**使用 VPC** 并完成以下操作。
**注意**  
对于使用 GitHub 企业服务器或 GitLab 自行管理的组织，您不会传递可用的主机。您要为组织中的每个连接创建一个新主机，并且必须确保在该主机的网络字段（VPC ID IDs、子网和安全组 IDs）中输入相同的信息。有关更多信息，请参阅 [已安装的提供商支持组织的连接和主机设置](troubleshooting-connections.md#troubleshooting-organization-host)。

   1. 在 **VPC ID** 中，选择您的 VPC ID。确保为基础设施选择安装主机的 VPC，或选择通过 VPN 或 Direct Connect 访问实例的 VPC。

   1. 如果您配置了私有 VPC，并且您已将主机配置为使用非公有证书颁发机构执行 TLS 验证，请在 **TLS 证书**中输入证书 ID。TLS 证书值为证书的公有密钥。

1. 选择 **Create host (创建主机)**。

1. 显示主机详细信息页面后，主机状态随着主机的创建而发生变化。
**注意**  
如果您的主机设置包括 VPC 配置，请等待几分钟时间来预置主机网络组件。

   等待您的主机进入 **Pending (待处理)** 状态，然后完成安装。有关更多信息，请参阅 [设置待处理的主机](connections-host-setup.md)。  
![\[控制台屏幕截图显示了主机处于待处理状态的 GitLab 自行管理的主机详细信息。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-glsm-host.png)

**步骤 2：设置待处理的主机**

1. 选择**设置主机**。

1. 将显示 *host\$1name* “**设置**” 页面。在**提供个人访问令牌**中，仅向你的 GitLab PAT 提供以下限定范围的权限：和。`api` `admin_mode`
**注意**  
只有管理员才能创建和使用 PAT。  
![\[控制台屏幕截图显示了新主机的 GitLab 个人访问令牌条目\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-glsm-pat.png)

1. 成功注册主机后，将显示主机详细信息页面，并显示主机状态为 **Available (可用)**。  
![\[控制台屏幕截图显示了新主机的可用状态\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-glsm-host-available.png)

**步骤 3：创建连接**

1. 登录 AWS 管理控制台，然后打开 AWS 开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。

1. 选择**设置**，然后选择**连接**选项卡。选择**创建连接**。

1. 要创建与 GitLab 存储库的连接，**请在 “选择提供商”** 下，选择 “**GitLab 自我管理**”。在**连接名称**中，输入要创建的连接的名称。  
![\[控制台屏幕截图显示了为 GitLab自行管理选择的连接选项。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-glsm.png)

1. 在 **URL** 中，输入服务器的终端节点。

1. 如果您已将服务器启动到 Amazon VPC 中，并且想要连接 VPC，请选择 **Use a VPC (使用 VPC)** 并完成以下操作。

   1. 在 **VPC ID** 中，选择您的 VPC ID。确保为基础设施选择安装主机的 VPC，或选择通过 VPN 或 Direct Connect 访问主机的 VPC。

   1. 在 **Subnet ID (子网 ID)** 下，选择 **Add (添加)**。在字段中，选择要用于主机的子网 ID。您可以选择最多 10 个子网。

      确保为基础设施选择安装主机的子网，或选择通过 VPN 或 Direct Connect 访问已安装主机的子网。

   1. 在 “**安全组**” 下 IDs，选择 “**添加**”。在字段中，选择要用于主机的安全组。您最多可以选择 10 个安全组。

      确保为基础设施选择安装主机的安全组，或选择通过 VPN 或 Direct Connect 访问已安装主机的安全组。

   1. 如果您配置了私有 VPC，并且您已将主机配置为使用非公有证书颁发机构执行 TLS 验证，请在 **TLS 证书**中输入证书 ID。TLS 证书值应该是证书的公有密钥。

1. 选择 “**Connect 以进行 GitLab 自我管理**”。创建的连接显示为**待处理**状态。将使用您提供的服务器信息为连接创建一个主机资源。对于主机名，将使用 URL。

1. 选择**更新待处理的连接**。

1.  GitLab 显示的登录页面时，使用您的凭据登录，然后选择**登录。**

1. 将显示一个授权页面，其中包含一条消息，请求授权连接访问您的 GitLab 账户。

   选择**授权**。

1. 浏览器返回到连接控制台页面。在 “**创建 GitLab 连接**” 下，新连接显示在 “**连接名称”** 中。

1. 选择 “**Connect 以进行 GitLab 自我管理**”。

   成功创建连接后，将显示成功横幅。连接详细信息显示在**连接设置**页面上。

## 创建与 GitLab 自我管理 (CLI) 的连接
<a name="connections-create-gitlab-managed-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 创建用于 GitLab自行管理的主机和连接。

为此，请使用 **create-host** 和 **create-connection** 命令。

**重要**  
默认情况下，通过 AWS CLI 或创建的连接 AWS CloudFormation 处于`PENDING`状态。使用 CLI 或创建连接后 CloudFormation，使用控制台编辑连接以使其处于状态`AVAILABLE`。

**步骤 1：创建用于 GitLab 自行管理的主机 (CLI)**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-host**命令，`--provider-endpoint`为您的连接指定`--name``--provider-type`、和。在此示例中，第三方提供程序名称为 `GitLabSelfManaged`，终端节点为 `my-instance.dev`。

   ```
   aws codeconnections create-host --name MyHost --provider-type GitLabSelfManaged --provider-endpoint "https://my-instance.dev"
   ```

   如果成功，该命令将返回类似以下内容的主机 Amazon 资源名称（ARN）信息。

   ```
   {
       "HostArn": "arn:aws:codeconnections:us-west-2:account_id:host/My-Host-28aef605"
   }
   ```

   完成此步骤后，主机处于 `PENDING` 状态。

1. 在以下步骤中，使用控制台完成主机设置并将主机移到 `Available` 状态。

**步骤 2：在控制台中设置待处理的主机**

1. 登录 AWS 管理控制台 并打开开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。

1. 使用控制台完成主机设置并将主机变为 `Available` 状态。请参阅[设置待处理的主机](connections-host-setup.md)。

**步骤 3：为 GitLab 自行管理 (CLI) 创建连接**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-connection**命令，`--connection-name`为您的连接指定`--host-arn`和。

   ```
   aws codeconnections create-connection --host-arn arn:aws:codeconnections:us-west-2:account_id:host/MyHost-234EXAMPLE --connection-name MyConnection
   ```

   如果成功，该命令将返回类似以下内容的连接 ARN 信息。

   ```
   {
       "ConnectionArn": "arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad"
   }
   ```

1. 在以下步骤中，使用控制台设置待处理的连接。

**步骤 4：在控制台中完成 GitLab 自我管理的连接**

1. 登录 AWS 管理控制台 并打开开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。

1. 使用控制台设置待处理的连接，并将连接移到 `Available` 状态。有关更多信息，请参阅 [更新挂起的连接](connections-update.md)。

# 更新挂起的连接
<a name="connections-update"></a>

默认情况下，通过 AWS Command Line Interface (AWS CLI) 或创建的连接 AWS CloudFormation 处于`PENDING`状态。使用 AWS CLI 或创建连接后 CloudFormation，使用控制台更新连接以使其处于状态`AVAILABLE`。

**注意**  
您必须使用控制台更新待处理的连接。您无法使用 AWS CLI更新待处理的连接。

首次使用控制台向第三方提供商添加新连接时，必须使用与您的连接关联的安装完成与第三方提供商的 OAuth 握手。

您可以使用开发人员工具控制台完成挂起的连接。

**完成连接**

1. 打开 AWS 开发者工具控制台，网址为[https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections)。

1. 选择**设置 > 连接**。

   将显示与您的 AWS 账户关联的所有连接的名称。

1. 在**名称**中，选择要更新的挂起连接的名称。

   当您选择具有 **Pending (待处理)** 状态的连接时，**Update a pending connection (更新待处理的连接)** 将变为可用。

1. 选择 **Update a pending connection (更新待处理的连接)**。

1. 在 **Connect to Bitbucket (连接到 Bitbucket)** 页面上的 **Connection name (连接名称)** 中，验证连接的名称。

   在 **Bitbucket apps (Bitbucket 应用程序)** 下，选择一个应用程序安装或选择 **Install a new app (安装新应用程序)** 来创建一个应用程序安装。  
![\[显示“Connect to Bitbucket (连接到 Bitbucket)”对话框以及安装新应用程序按钮的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/newreview-source-wizard-bitbucket.png)

1. 在应用程序安装页面上，一条消息显示该 AWS CodeStar 应用程序正在尝试连接到您的 Bitbucket 帐户。选择**授予访问权限**。  
![\[显示 AWS CodeStar 请求访问权限的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/bitbucket-access-popup.png)

1. 将显示新安装的连接 ID。选择**完成连接**。

# 列出连接
<a name="connections-list"></a>

您可以使用开发人员工具控制台或 AWS Command Line Interface (AWS CLI) 中的 **list-connections** 命令,来查看您账户中的连接列表。

## 列出连接（控制台）
<a name="connections-list-console"></a>

**列出连接**

1. 在 [https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections) 打开开发工具控制台。

1. 选择 **Settings > Connections (设置 > 连接)**。

1. 查看连接的名称、状态和 ARN。

## 列出连接 (CLI)
<a name="connections-list-cli"></a>

您可以使用列出您与第三方代码存储库的连接。 AWS CLI 对于与主机资源关联的连接（例如与 En GitHub terprise Server 的连接），输出还会返回主机 ARN。

为此，请使用 **list-connections** 命令。

**列出连接**
+ 打开终端（Linux、macOS 或 Unix）或命令提示符 (Windows)，然后使用运行命令。 AWS CLI **list-connections**

  ```
  aws codeconnections list-connections --provider-type Bitbucket
  --max-results 5 --next-token: next-token
  ```

  此命令将返回以下输出。

  ```
  {
       "Connections": [
           {
               "ConnectionName": "my-connection",
               "ProviderType": "Bitbucket",
               "Status": "PENDING",
               "ARN": "arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f",
               "OwnerAccountId": "account_id"
           },
           {
               "ConnectionName": "my-other-connection",
               "ProviderType": "Bitbucket",
               "Status": "AVAILABLE",
               "ARN": "arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f",
               "OwnerAccountId": "account_id"
            },
        ],
       "NextToken": "next-token"
  }
  ```

# 删除连接
<a name="connections-delete"></a>

您可以使用开发工具控制台或 AWS Command Line Interface (AWS CLI) 中的 **delete-connection** 命令来删除连接。

**Topics**
+ [删除连接（控制台）](#connections-delete-console)
+ [删除连接 (CLI)](#connections-delete-cli)

## 删除连接（控制台）
<a name="connections-delete-console"></a>

**删除连接**



1. 在 [https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections) 打开开发工具控制台。

1. 选择 **Settings > Connections (设置 > 连接)**。

1. 在**连接名称**中，选择要删除的连接的名称。

1. 选择 **Delete**。

1. 在字段中输入 **delete** 以确认，然后选择**删除**。
**重要**  
并且无法撤消。

## 删除连接 (CLI)
<a name="connections-delete-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 删除连接。

为此，请使用 **delete-connection** 命令。

**重要**  
运行该命令后，将删除连接。不显示任何确认对话框。您可以创建新连接，但不能重复使用 Amazon 资源名称 (ARN)。

**删除连接**
+ 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。使用运行**delete-connection**命令，指定要删除的连接的 ARN。 AWS CLI 

  ```
  aws codeconnections delete-connection --connection-arn arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f
  ```

  该命令不返回任何内容。

# 为连接资源添加标签
<a name="connections-tag"></a>

*标签*是您或 AWS 分配给 AWS 资源的自定义属性标签。每个 AWS 标签分为两部分：
+ *标签键*（例如，`CostCenter`、`Environment` 或 `Project`）。标签密钥区分大小写。
+ 一个称为*标签值*的可选字段（例如，`111122223333`、`Production` 或团队名称）。省略标签值与使用空字符串效果相同。与标签键一样，标签值区分大小写。

这些被统称为*键/值对*。

您可以使用控制台或 CLI 来标记资源。

您可以在 AWS 中标记以下资源类型 CodeConnections：
+ Connections
+ 主机

这些步骤假设您已经安装了的最新版本 AWS CLI 或已更新到当前版本。有关更多信息，请参阅《AWS Command Line Interface 用户指南》**中的[安装 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/installing.html)。

除了使用标签识别、组织和跟踪您的资源外，您还可以在 AWS Identity and Access Management (IAM) 策略中使用标签来帮助控制谁可以查看您的资源并与之交互。有关基于标签的访问策略示例，请参阅[使用标签控制对 AWS CodeConnections 资源的访问权限](connections-tag-based-access-control.md)。

**Topics**
+ [标记资源（控制台）](#connections-tag-console)
+ [标签资源 (CLI)](#connections-tag-cli)

## 标记资源（控制台）
<a name="connections-tag-console"></a>

您可以使用控制台添加、更新或删除连接资源上的标签。

**Topics**
+ [为连接资源添加标签（控制台）](#connections-tag-console-add)
+ [查看连接资源的标签（控制台）](#connections-tag-console-view)
+ [编辑连接资源的标签（控制台）](#connections-tag-console-edit)
+ [从连接资源中删除标签（控制台）](#connections-tag-console-remove)

### 为连接资源添加标签（控制台）
<a name="connections-tag-console-add"></a>

您可以使用控制台向现有连接或主机添加标签。

**注意**  
当您为已安装的提供商（例如 En GitHub terprise Server）创建连接并且还为您创建主机资源时，创建期间的标签只会添加到连接中。如果要将主机重用于新连接，则可以单独标记主机。如果您要将标签添加到主机，请使用此处的步骤。

****为连接添加标签****

1. 登录到控制台。从导航窗格中，选择**设置**。

1. 在 **Settings (设置)** 下，选择 **Connections (连接)**。选择**连接**选项卡。

1. 选择要编辑的连接。此时将显示连接设置页面。

1. 在 **Connection tags (连接标记)** 下，选择 **Edit (编辑)**。**Edit Connection tags (编辑连接标签)** 页面随即显示。

1. 在**键**和**值**字段中，输入您要添加的每组标签的键/值对。（**值**字段为可选项。） 例如，在**键**中，输入 **Project**。在**值**中，输入 **ProjectA**。  
![\[Connection tags interface with fields for Key and Value, and buttons to Add tag and Remove tag.\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-tags.png)

1. （可选）选择**添加标签**以添加多行并输入多个标签。

1. 选择 **Submit (提交)**。标签在连接设置下列出。

****为主机添加标签****

1. 登录到控制台。从导航窗格中，选择**设置**。

1. 在 **Settings (设置)** 下，选择 **Connections (连接)**。选择 **Host (主机)** 选项卡。

1. 选择要编辑的主机。此时将显示主机设置页面。

1. 在 **Host tags (主机标签)** 下，选择 **Edit (编辑)**。**Host tags (主机标签)** 页面随即显示。

1. 在**键**和**值**字段中，输入您要添加的每组标签的键/值对。（**值**字段为可选项。） 例如，在**键**中，输入 **Project**。在**值**中，输入 **ProjectA**。  
![\[Edit Host tags interface with fields for Key and Value, and buttons to Add tag and Remove tag.\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/hosts-tag.png)

1. （可选）选择 **Add tag (添加标签)** 以添加多行并为主机输入多个标签。

1. 选择**提交**。标签在主机设置下列出。

### 查看连接资源的标签（控制台）
<a name="connections-tag-console-view"></a>

您可以使用控制台查看现有资源的标签。

**要查看连接的标签**

1. 登录到控制台。从导航窗格中，选择**设置**。

1. 在 **Settings (设置)** 下，选择 **Connections (连接)**。选择**连接**选项卡。

1. 选择要查看的连接。此时将显示连接设置页面。

1. 在 **Connection tags (连接标签)** 下，在 **Key (键)** 和 **Value (值)** 列下查看连接的标签。

**查看主机的标签**

1. 登录到控制台。从导航窗格中，选择**设置**。

1. 在 **Settings (设置)** 下，选择 **Connections (连接)**。选择 **Host (主机)** 选项卡。

1. 选择要查看的主机。

1. 在 **Host tags (主机标签)** 下，在 **Key (键)** 和 **Value (值)** 列下查看主机的标签。

### 编辑连接资源的标签（控制台）
<a name="connections-tag-console-edit"></a>

您可以使用控制台来编辑已添加到连接资源的标签。

**编辑连接的标签**

1. 登录到控制台。从导航窗格中，选择**设置**。

1. 在 **Settings (设置)** 下，选择 **Connections (连接)**。选择**连接**选项卡。

1. 选择要编辑的连接。此时将显示连接设置页面。

1. 在 **Connection tags (连接标记)** 下，选择 **Edit (编辑)**。**Connection tags (连接标记)** 页面随即显示。

1. 在**键**和**值**字段中，根据需要更新每个字段的值。例如，对于 **Project** 键，在**值**中，将 **ProjectA** 更改为 **ProjectB**。

1. 选择 **Submit (提交)**。

**编辑主机的标签**

1. 登录到控制台。从导航窗格中，选择**设置**。

1. 在 **Settings (设置)** 下，选择 **Connections (连接)**。选择 **Host (主机)** 选项卡。

1. 选择要编辑的主机。此时将显示主机设置页面。

1. 在 **Host tags (主机标签)** 下，选择 **Edit (编辑)**。**Host tags (主机标签)** 页面随即显示。

1. 在**键**和**值**字段中，根据需要更新每个字段的值。例如，对于 **Project** 键，在**值**中，将 **ProjectA** 更改为 **ProjectB**。

1. 选择 **Submit (提交)**。

### 从连接资源中删除标签（控制台）
<a name="connections-tag-console-remove"></a>

您可以使用控制台从连接资源中删除标签。当您移除关联资源的标签时，对应标签会被删除。

**删除连接的标签**

1. 登录到控制台。从导航窗格中，选择**设置**。

1. 在 **Settings (设置)** 下，选择 **Connections (连接)**。选择**连接**选项卡。

1. 选择要编辑的连接。此时将显示连接设置页面。

1. 在 **Connection tags (连接标记)** 下，选择 **Edit (编辑)**。**Connection tags (连接标记)** 页面随即显示。

1. 接下来，对于您要删除的每个标签的键和值，选择**删除标签**。

1. 选择**提交**。

**删除主机的标签**

1. 登录到控制台。从导航窗格中，选择**设置**。

1. 在 **Settings (设置)** 下，选择 **Connections (连接)**。选择 **Host (主机)** 选项卡。

1. 选择要编辑的主机。此时将显示主机设置页面。

1. 在 **Host tags (主机标签)** 下，选择 **Edit (编辑)**。**Host tags (主机标签)** 页面随即显示。

1. 接下来，对于您要删除的每个标签的键和值，选择**删除标签**。

1. 选择**提交**。

## 标签资源 (CLI)
<a name="connections-tag-cli"></a>

您可以使用 CLI 在连接资源上查看、添加、更新或删除标签。

**Topics**
+ [向连接资源添加标签 (CLI)](#connections-tag-add)
+ [查看连接资源的标签 (CLI)](#connections-tag-view)
+ [编辑连接资源的标签 (CLI)](#connections-tag-edit)
+ [从连接资源中删除标签 (CLI)](#connections-tag-delete)

### 向连接资源添加标签 (CLI)
<a name="connections-tag-add"></a>

您可以使用 AWS CLI 来标记连接中的资源。

在终端或命令行运行 **tag-resource** 命令，指定要为其添加标签的资源的 Amazon 资源名称 (ARN)，以及要添加的标签的键和值。您可以添加多个标签。

****为连接添加标签****

1. 为您的资源获取 ARN。使用显示在 [列出连接](connections-list.md) 的 **list-connections** 命令来获取连接 ARN。

1. 在终端或命令行中，运行 **tag-resource** 命令。

   例如，使用以下命令来标记带有两个标签的连接，一个标签键以标签值命名 *Project**ProjectA*，一个标签键名为*ReadOnly*的标签值为*true*。

   ```
   aws codestar-connections tag-resource --resource-arn arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f --tags Key=Project,Value=ProjectA Key=IscontainerBased,Value=true
   ```

   如果成功，该命令不返回任何内容。

****为主机添加标签****

1. 为您的资源获取 ARN。使用显示在 [列出主机](connections-host-list.md) 的 **list-hosts** 命令来获取主机 ARN。

1. 在终端或命令行中，运行 **tag-resource** 命令。

   例如，使用以下命令使用两个标签来标记主机，一个标签键*Project*以标签值命名*ProjectA*，一个标签键名为*IscontainerBased*的标签值为*true*。

   ```
   aws codestar-connections tag-resource --resource-arn arn:aws:codestar-connections:us-west-2:account_id:host/My-Host-28aef605 --tags Key=Project,Value=ProjectA Key=IscontainerBased,Value=true
   ```

   如果成功，该命令不返回任何内容。

### 查看连接资源的标签 (CLI)
<a name="connections-tag-view"></a>

您可以使用 AWS CLI 来查看连接资源的 AWS 标签。如果尚未添加标签，则返回的列表为空。使用 **list-tags-for-resource** 命令查看已添加到连接或主机的标签。

****查看连接的标签****

1. 为您的资源获取 ARN。使用显示在 [列出连接](connections-list.md) 的 **list-connections** 命令来获取连接 ARN。

1. 在终端或命令行中，运行 **list-tags-for-resource** 命令。例如，使用以下命令可查看连接的标签键和标签值列表。

   ```
   aws codestar-connections list-tags-for-resource --resource-arn arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f
   ```

   此命令返回与资源关联的标签。此示例显示了为连接返回的两个“键-值”对。

   ```
   {
       "Tags": [
           {
               "Key": "Project",
               "Value": "ProjectA"
           },
           {
               "Key": "ReadOnly",
               "Value": "true"
           }
       ]
   }
   ```

****查看主机的标签****

1. 为您的资源获取 ARN。使用显示在 [列出主机](connections-host-list.md) 的 **list-hosts** 命令来获取主机 ARN。

1. 在终端或命令行中，运行 **list-tags-for-resource** 命令。例如，使用以下命令可查看主机的标签键和标签值列表。

   ```
   aws codestar-connections list-tags-for-resource --resource-arn arn:aws:codestar-connections:us-west-2:account_id:host/My-Host-28aef605
   ```

   此命令返回与资源关联的标签。此示例显示了为主机返回的两个“键-值”对。

   ```
   {
       "Tags": [
           {
               "Key": "IscontainerBased",
               "Value": "true"
           },
           {
               "Key": "Project",
               "Value": "ProjectA"
           }
       ]
   }
   ```

### 编辑连接资源的标签 (CLI)
<a name="connections-tag-edit"></a>

您可以使用 AWS CLI 来编辑资源的标签。您可以更改现有键的值或添加另一个键。

在终端或命令行运行 **tag-resource** 命令，指定要为其更新标签的资源的 ARN，并指定要更新的标签键和标签值。

编辑标签时，任何未指定的标签键都将被保留，而具有相同键和新值的任何标签键都将被更新。通过编辑命令添加的新键将作为新的键-值对添加。

****编辑连接的标签****

1. 为您的资源获取 ARN。使用显示在 [列出连接](connections-list.md) 的 **list-connections** 命令来获取连接 ARN。

1. 在终端或命令行中，运行 **tag-resource** 命令。

   在此示例中，键 `Project` 的值将更改为 `ProjectB`。

   ```
   aws codestar-connections tag-resource --resource-arn arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f --tags Key=Project,Value=ProjectB
   ```

   如果成功，该命令不返回任何内容。要验证与连接关联的标签，请运行 **list-tags-for-resource** 命令。

****编辑主机的标签****

1. 为您的资源获取 ARN。使用显示在 [列出主机](connections-host-list.md) 的 **list-hosts** 命令来获取主机 ARN。

1. 在终端或命令行中，运行 **tag-resource** 命令。

   在此示例中，键 `Project` 的值将更改为 `ProjectB`。

   ```
   aws codestar-connections tag-resource --resource-arn arn:aws:codestar-connections:us-west-2:account_id:host/My-Host-28aef605 --tags Key=Project,Value=ProjectB
   ```

   如果成功，该命令不返回任何内容。要验证与主机关联的标签，请运行 **list-tags-for-resource** 命令。

### 从连接资源中删除标签 (CLI)
<a name="connections-tag-delete"></a>

按照以下步骤使用 AWS CLI 从资源中移除标签。当您移除关联资源的标签时，对应标签会被删除。

**注意**  
如果删除连接资源，则会从删除的资源中删除所有标签关联。在删除连接资源之前，无需删除标签。

在终端或命令行运行 **untag-resource** 命令，指定要从中删除标签的资源的 ARN 以及要删除的标签的标签键。例如，要使用标签键*Project*和删除连接上的多个标签*ReadOnly*，请使用以下命令。

```
aws codestar-connections untag-resource --resource-arn arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f --tag-keys Project ReadOnly
```

如果成功，该命令不返回任何内容。要验证与资源关联的标签，请运行 **list-tags-for-resource** 命令。输出将显示所有已删除的标签。

```
{
    "Tags": []
}
```

# 查看连接详细信息
<a name="connections-view-details"></a>

您可以使用开发工具控制台或 AWS Command Line Interface (AWS CLI) 中的 **get-connection** 命令来查看连接的详细信息。要使用 AWS CLI，您必须已经安装了的最新版本 AWS CLI 或已更新到当前版本。有关更多信息，请参阅《AWS Command Line Interface 用户指南》**中的[安装 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/installing.html)。

**要查看连接（控制台）**

1. 在 [https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections) 打开开发工具控制台。

1. 选择 **Settings > Connections (设置 > 连接)**。

1. 选择要查看的连接旁边的按钮，然后选择 **View details (查看详细信息)**。

1. 此时将显示以下连接信息：
   + 连接名称。
   + 连接的提供程序类型。
   + 连接状态。
   + 连接 ARN。
   + 如果连接是为已安装的提供商（例如 En GitHub terprise Server）创建的，则为与该连接关联的主机信息。
   + 如果连接是为已安装的提供商（例如 En GitHub terprise Server）创建的，则需要与该连接的主机关联的端点信息。

1. 如果连接位于 **Pending (待处理)** 状态，要完成连接，请选择 **Update pending connection (更新待处理的连接)**。有关更多信息，请参阅[更新待处理的连接](connections-update.md)。

**要查看连接 (CLI)**
+ 在终端或命令行中，运行 **get-connection** 命令。例如，使用以下命令可查看 ARN 值为 `arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f` 的连接的详细信息。

  ```
  aws codeconnections get-connection --connection-arn arn:aws:codeconnections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f
  ```

  如果成功，则此命令会返回连接详细信息。

  Bitbucket 连接的输出示例：

  ```
  {
      "Connection": {
          "ConnectionName": "MyConnection",
          "ConnectionArn": "arn:aws:codeconnections:us-west-2:account_id:connection/cdacd948-EXAMPLE",
          "ProviderType": "Bitbucket",
          "OwnerAccountId": "account_id",
          "ConnectionStatus": "AVAILABLE"
      }
  }
  ```

   GitHub 连接的输出示例：

  ```
  {
      "Connection": {
          "ConnectionName": "MyGitHubConnection",
          "ConnectionArn": "arn:aws:codeconnections:us-west-2:account_id:connection/ebcd4a13-EXAMPLE",
          "ProviderType": "GitHub",
          "OwnerAccountId": "account_id",
          "ConnectionStatus": "AVAILABLE"
      }
  }
  ```

   GitHub 企业服务器连接的输出示例：

  ```
  {
      "Connection": {
          "ConnectionName": "MyConnection",
          "ConnectionArn": "arn:aws:codeconnections:us-west-2:account_id:connection/2d178fb9-EXAMPLE",
          "ProviderType": "GitHubEnterpriseServer",
          "OwnerAccountId": "account_id",
          "ConnectionStatus": "PENDING",
          "HostArn": "arn:aws:ccodeconnections:us-west-2:account_id:host/sdfsdf-EXAMPLE"
      }
  }
  ```

# 与共享连接 AWS 账户
<a name="connections-share"></a>

您可以使用资源共享功能与其他 AWS RAM 人共享现有连接， AWS 账户 也可以与组织中的账户共享现有连接。您可以将共享连接与您管理 AWS 的资源用于第三方源连接，例如中 CodePipeline。

**重要**  
`codestar-connections `资源不支持连接共享。只有`codeconnections`资源才支持此功能。

开始前的准备工作：
+ 您必须已经与您的建立了连接 AWS 账户。
+ 您必须启用资源共享。
+ 您必须配置所需的权限。有关更多信息，请参阅 [支持的连接共享权限](security-iam.md#permissions-reference-connections-sharing)。

**注意**  
要共享连接，您必须是组织所有者或存储库所有者（如果不在组织之下）。您与之共享的账户也需要存储库的权限。

**Topics**
+ [共享连接（控制台）](#connections-share-console)
+ [共享连接 (CLI)](#connections-share-cli)
+ [查看共享连接（控制台）](#connections-view-console)
+ [查看共享连接 (CLI)](#connections-view-cli)

## 共享连接（控制台）
<a name="connections-share-console"></a>

您可以使用控制台创建共享连接资源。

1. 登录到 AWS 管理控制台。

   在 AWS RAM 控制台的 “**[我共**享：共享资源” 页面上选择 “创建**资源共享](https://console.aws.amazon.com/ram/home#OwnedResources:)**”。

1. 由于 AWS RAM 资源共享存在于特定 AWS 区域中，因此请从控制台右上角的下拉列表中选择相应的 AWS 区域。要创建包含全球资源的资源共享，必须将 AWS 区域设置为美国东部（弗吉尼亚北部），

   有关共享全球资源的更多信息，请参阅[共享区域资源与全球资源的比较](https://docs.aws.amazon.com/ram/latest/userguide/working-with-regional-vs-global.html)。

1. 在创建页面的**名称**中，输入资源共享的名称。在 “**资源**” 下，选择 “**代码连接**”。  
![\[\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-share-create.png)

1. 选择您的连接资源并分配要与之共享的委托人。

1. 选择**创建**。

## 共享连接 (CLI)
<a name="connections-share-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 与其他账户共享现有连接，并查看您拥有或已与您共享的连接。

为此，请使用**create-resource-share**和的`accept-resource-share-invitation `命令 AWS RAM。

**共享连接**

1. 使用将共享连接的帐户登录。

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-resource-share**命令，`--principals`为您的连接共享指定`--name``--resource-arns`、和。在此示例中，名称为`my-shared-resource`，指定的连接名称位于资源 ARN `MyConnection` 中。在中`principals`，提供您要与之共享的一个或多个目标账户。

   ```
   aws ram create-resource-share --name my-shared-resource --resource-arns connection_ARN --principals destination_account
   ```

   如果成功，该命令将返回类似以下内容的连接 ARN 信息。

   ```
   {
       "resourceShare": {
           "resourceShareArn": "arn:aws:ram:us-west-2:111111111111:resource-share/4476c27d-8feb-4b21-afe9-7de23EXAMPLE",
           "name": "MyNewResourceShare",
           "owningAccountId": "111111111111",
           "allowExternalPrincipals": true,
           "status": "ACTIVE",
           "creationTime": 1634586271.302,
           "lastUpdatedTime": 1634586271.302
       }
   }
   ```

1. 可以接受共享请求，详见下一步操作。

**验证并接受与目标账户共享的连接**

对于属于同一组织且在 Organizations 中启用资源共享的目标帐户，以下过程是可选的。

1. 使用将收到邀请的目标账户登录。

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**get-resource-share-invitations**命令。

   ```
   aws ram get-resource-share-invitations
   ```

   获取资源共享邀请 ARN 以供下一步使用。

1. 运行**accept-resource-share-invitation**命令，指定`--resource-share-invitation-arn`。

   ```
   aws ram accept-resource-share-invitation --resource-share-invitation-arn invitation_ARN
   ```

   如果成功，此命令将返回以下输出。

   ```
   {
       "resourceShareInvitation": {
           "resourceShareInvitationArn": "arn:aws:ram:us-west-2:111111111111:resource-share-invitation/1e3477be-4a95-46b4-bbe0-c4001EXAMPLE",
           "resourceShareName": "MyResourceShare",
           "resourceShareArn": "arn:aws:ram:us-west-2:111111111111:resource-share/27d09b4b-5e12-41d1-a4f2-19dedEXAMPLE",
           "senderAccountId": "111111111111",
           "receiverAccountId": "222222222222",
           "invitationTimestamp": "2021-09-22T15:07:35.620000-07:00",
           "status": "ACCEPTED"
       }
   }
   ```

## 查看共享连接（控制台）
<a name="connections-view-console"></a>

您可以使用控制台查看共享连接资源。

1. 登录到 AWS 管理控制台。

   在 AWS RAM 控制台中打开 “**[我共享：共享资源](https://console.aws.amazon.com/ram/home#OwnedResources:)**” 页面。

1. 由于 AWS RAM 资源共享存在于特定的 AWS 区域中，因此请从控制台右上角的下拉列表中选择相应的 AWS 区域。要查看包含全球资源的资源共享，您必须将 AWS 区域设置为美国东部（弗吉尼亚北部），

   有关共享全球资源的更多信息，请参阅[共享区域资源与全球资源的比较](https://docs.aws.amazon.com/ram/latest/userguide/working-with-regional-vs-global.html)。

1. 对于每个共享资源，可获得以下信息：
   + **资源 ID** - 资源的 ID。选择资源的 ID，打开新的浏览器选项卡，以便在其本机服务控制台中查看该资源。
   + **资源类型** - 资源的类型。
   + **上次共享日期** - 上次共享资源的日期。
   + **资源共享** - 包含资源的资源共享的数量。要查看资源共享列表，请选择该数字。
   + **主体** - 可以访问资源的主体数量。选择此值以查看主体。

## 查看共享连接 (CLI)
<a name="connections-view-cli"></a>

您可以使用 AWS CLI 来查看您拥有或已与您共享的连接。

为此，请使用 **get-resource-shares** 命令。

**查看共享连接**
+ 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**get-resource-shares**命令。

  ```
  aws ram get-resource-shares
  ```

  输出会返回您账户的资源共享列表。

# 使用主机
<a name="connections-hosts"></a>

要创建与已安装的提供程序类型（例如 GitHub 企业服务器）的连接，请先使用创建主机 AWS 管理控制台。主机是您创建的资源，用于表示安装提供程序的基础设施。然后使用该主机创建连接。有关更多信息，请参阅 [使用连接](connections.md)。

例如，您为您的连接创建一个主机，以便为您的提供商注册第三方应用程序以表示您的基础设施。为提供程序类型创建一个主机，然后与该提供程序类型的所有连接都使用该主机。

当您使用控制台创建与已安装的提供商类型（例如 En GitHub terprise Server）的连接时，控制台会为您创建主机资源。

**Topics**
+ [创建主机](connections-host-create.md)
+ [设置待处理的主机](connections-host-setup.md)
+ [列出主机](connections-host-list.md)
+ [编辑主机](connections-host-edit.md)
+ [删除主机](connections-host-delete.md)
+ [查看主机详细信息](connections-host-view.md)

# 创建主机
<a name="connections-host-create"></a>

您可以使用 AWS 管理控制台 或 AWS Command Line Interface (AWS CLI) 来创建与安装在您的基础架构上的第三方代码存储库的连接。例如，您可能让 GitHub企业服务器作为虚拟机在 Amazon EC2 实例上运行。在创建与 GitHub 企业服务器的连接之前，需要创建用于连接的主机。

有关已安装提供程序的主机创建工作流程的概述，请参阅[创建或更新主机的工作流程](welcome-hosts-workflow.md)。

开始前的准备工作：
+ （可选）如果您想创建带有 VPC 的主机，您必须已经创建了网络或虚拟私有云（VPC）。
+ 您必须已创建实例，并且如果您计划连接 VPC，则将主机启动到您的 VPC 中。
**注意**  
每个 VPC 一次只能关联一个主机。

（可选）您可以为主机配置 VPC。有关主机资源的网络和 VPC 配置的更多信息，请参阅[（可选）先决条件：您的连接的网络或 Amazon VPC 配置](#connections-create-host-prereq)和[对主机的 VPC 配置进行故障排查](troubleshooting-connections.md#troubleshooting-connections-host-vpc)中的 VPC 先决条件。

要使用控制台创建主机以及与 GitHub 企业服务器的连接，请参见[创建您的 GitHub 企业服务器连接（控制台）](connections-create-gheserver-console.md#connections-create-gheserver-connection)。控制台将为您创建一个主机。

要使用控制台创建主机并连接到 GitLab 自行管理，请参阅[创建与 GitLab 自我管理的连接](connections-create-gitlab-managed.md)。控制台将为您创建一个主机。

## （可选）先决条件：您的连接的网络或 Amazon VPC 配置
<a name="connections-create-host-prereq"></a>

如果为您的基础设施配置了网络连接，则可以跳过本节内容。

如果您的主机只能在 VPC 中访问，请在继续操作之前遵循以下 VPC 要求。

### VPC 要求
<a name="connections-create-host-prereq-vpc"></a>

您可以选择性地创建带有 VPC 的主机。以下是一般 VPC 要求，具体取决于您为安装设置的 VPC。
+ 您可以配置带有公有和私有子网的*公有* VPC。如果您没有首选的 CIDR 块或子网，您可以为 AWS 账户 使用默认 VPC。
+ 如果您配置了*私*有 VPC，并且已将 GitHub 企业服务器实例配置为使用非公共证书颁发机构执行 TLS 验证，则需要为您的主机资源提供 TLS 证书。
+ 当连接创建您的主机时，将为您创建用于 Webhook 的 VPC 终端节点 (PrivateLink)。有关更多信息，请参阅 [AWS CodeConnections 和接口 VPC 终端节点 (AWS PrivateLink)](vpc-interface-endpoints.md)。
+ 安全组配置
  + 主机创建期间使用的安全组需要允许网络接口连接到 GitHub 企业服务器实例的入站和出站规则
  + 连接到您的 E GitHub nterprise Server 实例（不是主机设置的一部分）的安全组需要通过连接创建的网络接口进行入站和出站访问。
+ 您的 VPC 子网必须位于您所在区域的不同可用区中。可用区是可以隔离其他可用区的故障的不同位置。每个子网都必须完全位于一个可用区之内，不能跨越多个可用区。

有关使用 VPCs 和子网的更多信息，请参阅 *Amazon VPC 用户指南 IPv4中的 VPC* [和子网大小](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html#vpc-sizing-ipv4)。

**您为主机设置提供的 VPC 信息**

在下一步中为连接创建主机资源时，需要提供以下内容：
+ **VPC ID：**安装 GitHub 企业服务器实例的服务器或可以通过 VPN 或 Direct Connect 访问已安装的 GitHub 企业服务器实例的 VPC 的 VPC 的 ID。
+ **子网 ID 或 IDs：**安装 GitHub 企业服务器实例的服务器的子网 ID 或可通过 VPN 或 Direct Connect 访问已安装的 GitHub 企业服务器实例的子网 ID。
+ 一个@@ **或多个安全组：**安装 GitHub 企业服务器实例的服务器的安全组，或者可以通过 VPN 或 Direct Connect 访问已安装的 GitHub企业服务器实例的安全组。
+ **终端节点：**准备好您的服务器终端节点，并继续下一步。

有关更多信息，包括 VPC 或主机连接的故障排查，请参阅 [对主机的 VPC 配置进行故障排查](troubleshooting-connections.md#troubleshooting-connections-host-vpc)。

### 权限要求
<a name="connections-create-host-prereq-permissions"></a>

作为主机创建过程的一部分，代表您 AWS CodeConnections 创建网络资源以促进 VPC 连接。这包括一个用于 AWS CodeConnections 查询主机数据的网络接口，以及一个*PrivateLink*用于通过 webhook 向连接发送事件数据的 VPC 终端节点。为了能够创建这些网络资源，请确保用于创建主机的 IAM 用户具有以下权限：

```
ec2:CreateNetworkInterface
ec2:CreateTags
ec2:DescribeDhcpOptions
ec2:DescribeNetworkInterfaces
ec2:DescribeSubnets
ec2:DeleteNetworkInterface
ec2:DescribeVpcs
ec2:CreateVpcEndpoint
ec2:DeleteVpcEndpoints
ec2:DescribeVpcEndpoints
```

有关 VPC 中权限或主机连接故障排除的更多信息，请参阅[对主机的 VPC 配置进行故障排查](troubleshooting-connections.md#troubleshooting-connections-host-vpc)。

有关 Webhook VPC 终端节点的更多信息，请参阅 [AWS CodeConnections 和接口 VPC 终端节点 (AWS PrivateLink)](vpc-interface-endpoints.md)。

**Topics**
+ [（可选）先决条件：您的连接的网络或 Amazon VPC 配置](#connections-create-host-prereq)
+ [创建连接的主机（控制台）](#connections-host-create-console)
+ [创建用于连接的主机（CLI）](#connections-host-create-cli)

## 创建连接的主机（控制台）
<a name="connections-host-create-console"></a>

对于用于安装的连接，例如与 E GitHub nterprise Server 或 GitLab自我管理的连接，您可以使用主机来表示安装第三方提供商的基础架构的端点。

**注意**  
从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

要了解有关在 VPC 中设置主机的注意事项，请参阅 [创建与 GitLab 自我管理的连接](connections-create-gitlab-managed.md)。

要使用控制台创建主机以及与 GitHub 企业服务器的连接，请参见[创建您的 GitHub 企业服务器连接（控制台）](connections-create-gheserver-console.md#connections-create-gheserver-connection)。控制台将为您创建一个主机。

要使用控制台创建主机并连接到 GitLab 自行管理，请参阅[创建与 GitLab 自我管理的连接](connections-create-gitlab-managed.md)。控制台将为您创建一个主机。

**注意**  
每个 E GitHub nterprise Server 或 GitLab 自我管理帐户只能创建一次主机。您与特定 GitHub 企业服务器或 GitLab自行管理帐户的所有连接都将使用同一台主机。

## 创建用于连接的主机（CLI）
<a name="connections-host-create-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 为已安装的连接创建主机。

**注意**  
每个 GitHub 企业服务器帐户只能创建一次主机。您与特定 GitHub 企业服务器帐户的所有连接都将使用同一台主机。

您可以使用主机来表示安装第三方提供程序的基础设施的终端节点。要使用 CLI 创建主机，请使用 **create-host** 命令。完成主机创建后，主机处于 **Pending (待处理)** 状态。然后您*设置*主机将其变为 **Available (可用)** 状态。主机可用后，完成创建连接的步骤。

**重要**  
默认情况下，通过创建的主机 AWS CLI 处于`Pending`状态。使用 CLI 创建主机后，可使用控制台设置主机使其状态为 `Available`。

要使用控制台创建主机以及与 GitHub 企业服务器的连接，请参见[创建您的 GitHub 企业服务器连接（控制台）](connections-create-gheserver-console.md#connections-create-gheserver-connection)。控制台将为您创建一个主机。

要使用控制台创建主机并连接到 GitLab 自行管理，请参阅[创建与 GitLab 自我管理的连接](connections-create-gitlab-managed.md)。控制台将为您创建一个主机。

# 设置待处理的主机
<a name="connections-host-setup"></a>

通过 AWS Command Line Interface (AWS CLI) 或 SDK 创建的主机默认处于`Pending`状态。创建与控制台或 SDK 的连接后，使用控制台将主机设置为其状态`Available`。 AWS CLI

您必须已创建一个主机。有关更多信息，请参阅 [Create a host (创建主机)](connections-host-create.md)。<a name="proc-host-setup-steps"></a>

**要设置待处理的主机**

创建主机后，它处于 **Pending (待处理)** 状态。要将主机从 **Pending (待处理)** 变为 **Available (可用)** 状态，请完成以下步骤。此过程与第三方提供商进行握手，以便在主机上注册 AWS 连接应用程序。

1. 在 AWS 开发者工具控制台上的主机处于 “**待处理**” 状态后，选择**设置主机**。

1. 如果您正在创建用于 GitLab 自行管理的主机，则会显示 “**设置**” 页面。在**提供个人访问令牌**中，仅向你的 GitLab PAT 提供以下限定范围的权限：api。

1. 在第三方安装的提供商登录页面（例如 **E GitHub nterprise Server** 登录页面）上，如果出现提示，请使用您的帐户凭据登录。

1. 在应用程序安装页面的**GitHub 应用程序名称**中，输入要为主机安装的应用程序的名称。选择 “**创建 GitHub应用程序**”。

1. 成功注册主机后，将显示主机详细信息页面，并显示主机状态为 **Available (可用)**。  
![\[显示主机设置已完成且处于 Available (可用) 状态的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-create-host-register-complete.png)

1. 在主机可用后，您可以继续创建连接。在成功横幅上，选择 **Create connection (创建连接)**。完成 [Create a connection (创建连接)](connections-create-gheserver-console.md) 中的步骤。

# 列出主机
<a name="connections-host-list"></a>

您可以使用开发人员工具控制台或 AWS Command Line Interface (AWS CLI) 中的 **list-connections** 命令,来查看您账户中的连接列表。

## 列出主机（控制台）
<a name="connections-host-list-console"></a>

**要列出主机**

1. 在 [https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections) 打开开发工具控制台。

1. 选择 **Host (主机)** 选项卡。查看主机的名称、状态和 ARN。

## 列出主机 (CLI)
<a name="connections-host-list-cli"></a>

您可以使用列 AWS CLI 出已安装的第三方提供商连接的主机。

为此，请使用 **list-hosts** 命令。

**列出主机**
+ 打开终端（Linux、macOS 或 Unix）或命令提示符 (Windows)，然后使用运行命令。 AWS CLI **list-hosts**

  ```
  aws codeconnections list-hosts
  ```

  此命令将返回以下输出。

  ```
  {
      "Hosts": [
          {
              "Name": "My-Host",
              "HostArn": "arn:aws:codeconnections:us-west-2:account_id:host/My-Host-28aef605",
              "ProviderType": "GitHubEnterpriseServer",
              "ProviderEndpoint": "https://my-instance.test.dev",
              "Status": "AVAILABLE"
          }
      ]
  }
  ```

# 编辑主机
<a name="connections-host-edit"></a>

您可以编辑处于 `Pending` 状态主机的主机设置。您可以编辑主机名、URL 或 VPC 配置。

您不能将同一个 URL 用于多个主机。

**注意**  
要了解有关在 VPC 中设置主机的注意事项，请参阅 [（可选）先决条件：您的连接的网络或 Amazon VPC 配置](connections-host-create.md#connections-create-host-prereq)。

**要编辑主机**

1. 在 [https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections) 打开开发工具控制台。

1. 选择 **Settings > Connections (设置 > 连接)**。

1. 选择 **Host (主机)** 选项卡。

   将显示与您的 AWS 账户关联并在所选 AWS 地区创建的主机。

1. 要编辑主机名，则在 **Name (名称)** 中输入新值。

1. 要编辑主机终端节点，则在 **URL** 中输入新值。

1. 要编辑主机 VPC 配置，请在 **VPC ID** 中输入新值。

1. 选择 **Edit host (编辑主机)**。

1. 将显示更新后的设置。选择 **Set up Pending host (设置待处理主机)**。

# 删除主机
<a name="connections-host-delete"></a>

您可以使用开发工具控制台或 AWS Command Line Interface (AWS CLI) 中的 **delete-host** 命令来删除主机。

**Topics**
+ [删除主机（控制台）](#connections-host-delete-console)
+ [删除主机 (CLI)](#connections-host-delete-cli)

## 删除主机（控制台）
<a name="connections-host-delete-console"></a>

**要删除主机**



1. 在 [https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections) 打开开发工具控制台。

1. 选择 **Host (主机)** 选项卡。在 **Name (名称)** 中，选择您要删除的主机的名称。

1. 选择 **Delete**。

1. 在字段中输入 **delete** 以确认，然后选择**删除**。
**重要**  
并且无法撤消。

## 删除主机 (CLI)
<a name="connections-host-delete-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 删除主机。

为此，请使用 **delete-host** 命令。

**重要**  
必须先删除与主机关联的所有连接，然后才能删除主机。  
运行该命令后，将删除主机。不显示任何确认对话框。

**要删除主机**
+ 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。使用运行**delete-host**命令，指定 AWS CLI 要删除的主机的 Amazon 资源名称 (ARN)。

  ```
  aws codeconnections delete-host --host-arn "arn:aws:codeconnections:us-west-2:account_id:host/My-Host-28aef605"
  ```

  该命令不返回任何内容。

# 查看主机详细信息
<a name="connections-host-view"></a>

您可以使用开发工具控制台或 AWS Command Line Interface (AWS CLI) 中的 **get-host** 命令来查看主机的详细信息。



**要查看主机详细信息（控制台）**

1. 登录到 AWS 管理控制台 ，然后打开 [https://console.aws.amazon.com/codesuite/settings/connections](https://console.aws.amazon.com/codesuite/settings/connections) 上的开发工具控制台。

1. 选择 **Settings > Connections (设置 > 连接)**，然后选择 **Hosts (主机)** 选项卡。

1. 选择要查看的主机旁边的按钮，然后选择 **View details (查看详细信息)**。

1. 此时将显示以下主机信息：
   + 主机名。
   + 连接的提供程序类型。
   + 安装提供程序的基础设施的终端节点。
   + 主机的设置状态。准备好连接的主机处于 **Available (可用)** 状态。如果您的主机已创建但设置尚未完成，则主机可能处于不同的状态。

     以下是可能的状态：
     + PENDING (待处理) - 主机已完成创建，并准备好通过在主机上注册提供程序应用程序开始设置。
     + AVAILABLE (可用) - 主机已完成创建和设置，可用于连接。
     + ERROR (错误) - 主机创建或注册过程中出错。
     + VPC\$1CONFIG\$1VPC\$1INITIALIZING - 正在创建主机的 VPC 配置。
     + VPC\$1CONFIG\$1VPC\$1FAILED\$1INITIALIZATION - 主机的 VPC 配置遇到错误并失败。
     + VPC\$1CONFIG\$1VPC\$1AVAILABLE - 主机的 VPC 配置已完成设置并且可用。
     + VPC\$1CONFIG\$1VPC\$1DELETING - 正在删除主机的 VPC 配置。  
![\[显示主机处于 Available (可用) 状态的主机详细信息的控制台屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/connections-view-host-screen.png)

1. 要删除该主机，请选择 **Delete (删除)**。

1. 如果主机位于 **Pending (待处理)** 状态，要完成设置，请选择 **Set up host (设置主机)**。有关更多信息，请参阅[设置待处理的主机](connections-host-setup.md)。

**要查看主机详细信息 (CLI)**
+ 打开终端（Linux、macOS 或 Unix）或命令提示符 (Windows)，然后使用运行**get-host**命令，指定要查看其详细信息的主机的亚马逊资源名称 (ARN)。 AWS CLI 

  ```
  aws codeconnections get-host --host-arn arn:aws:codeconnections:us-west-2:account_id:host/My-Host-28aef605
  ```

  此命令将返回以下输出。

  ```
  {
      "Name": "MyHost",
      "Status": "AVAILABLE",
      "ProviderType": "GitHubEnterpriseServer",
      "ProviderEndpoint": "https://test-instance-1.dev/"
  }
  ```

# 针对已链接存储库使用同步配置
<a name="configurations"></a>

在中 AWS CodeConnections，您可以使用连接将 AWS 资源关联到第三方存储库，例如 Bitbucket Cloud GitHub、E GitHub nterprise Server 和 GitLab。使用`CFN_STACK_SYNC`同步类型，您可以创建同步配置，该配置 AWS 允许同步 Git 存储库中的内容以更新指定 AWS 资源。 CloudFormation 与连接集成，因此您可以使用 Git sync 在与之同步的链接存储库中管理模板和参数文件。

创建连接后，您可以使用 connections CLI 或 CloudFormation 控制台来创建存储库链接和同步配置。
+ 存储库链接：存储库链接在您的连接和外部 Git 存储库之间创建关联。存储库链接使 Git 同步功能可监控和同步指定 Git 存储库中的文件更改。
+ 同步配置：使用同步配置同步 Git 存储库中的内容以更新指定 AWS 资源。

有关更多信息，请参阅 [https://docs.aws.amazon.com/codeconnections/latest/APIReference/Welcome.html](https://docs.aws.amazon.com/codeconnections/latest/APIReference/Welcome.html)。

有关如何使用 CloudFormation 控制台为 CloudFormation 堆栈创建同步配置的教程，请参阅《*CloudFormation 用户指南》*中的 “[使用 CloudFormation Git sync](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/git-sync.html)”。

**Topics**
+ [使用存储库链接](repositorylinks.md)
+ [使用同步配置](syncconfigurations.md)

# 使用存储库链接
<a name="repositorylinks"></a>

存储库链接会在您的连接和外部 Git 存储库之间创建关联。仓库链接允许 Git sync 监控指定 Git 仓库中文件的更改并将其同步到 CloudFormation 堆栈。

有关仓库链接的更多信息，请参阅 [AWS CodeConnections API 参考](https://docs.aws.amazon.com/codestar-connections/latest/APIReference/Welcome.html)。

**Topics**
+ [创建存储库链接](repositorylinks-create.md)
+ [更新存储库链接](repositorylinks-update.md)
+ [列出存储库链接](repositorylinks-list.md)
+ [删除存储库链接](repositorylinks-delete.md)
+ [查看存储库链接详细信息](repositorylinks-view-details.md)

# 创建存储库链接
<a name="repositorylinks-create"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 中的**create-repository-link**命令在连接和要同步到的外部存储库之间创建链接。

在创建存储库链接之前，您必须已经使用第三方提供商创建了外部存储库，例如 GitHub。

**创建存储库链接**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-repository-link**命令。指定关联连接的 ARN、所有者 ID 和存储库名称。

   ```
   aws codeconnections create-repository-link --connection-arn  arn:aws:codeconnections:us-east-1:account_id:connection/001f5be2-a661-46a4-b96b-4d277cac8b6e --owner-id account_id --repository-name MyRepo 
   ```

1. 此命令将返回以下输出。

   ```
   {
       "RepositoryLinkInfo": {
           "ConnectionArn": "arn:aws:codeconnections:us-east-1:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f",
           "OwnerId": "account_id",
           "ProviderType": "GitHub",
           "RepositoryLinkArn": "arn:aws:codeconnections:us-east-1:account_id:repository-link/be8f2017-b016-4a77-87b4-608054f70e77",
           "RepositoryLinkId": "be8f2017-b016-4a77-87b4-608054f70e77",
           "RepositoryName": "MyRepo",
           "Tags": []
       }
   }
   ```

# 更新存储库链接
<a name="repositorylinks-update"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 中的**update-repository-link**命令来更新指定的存储库链接。

您可以更新存储库链接的以下信息：
+ `--connection-arn`
+ `--owner-id`
+ `--repository-name`

当您想要更改与存储库关联的连接时，可以更新存储库链接。要使用其他连接，您需要指定连接 ARN。有关查看连接 ARN 的步骤，请参阅[查看连接详细信息](connections-view-details.md)。

**更新存储库链接**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。使用运行**update-repository-link**命令，为存储库链接指定要更新的值。 AWS CLI 例如，以下命令将更新与存储库链接 ID 关联的连接。它使用 `--connection` 参数指定新的连接 ARN。

   ```
   aws codestar-connections update-repository-link --repository-link-id 6053346f-8a33-4edb-9397-10394b695173 --connection-arn arn:aws:codestar-connections:us-east-1:account_id:connection/aEXAMPLE-f055-4843-adef-4ceaefcb2167 
   ```

1. 此命令将返回以下输出。

   ```
   {
       "RepositoryLinkInfo": {
           "ConnectionArn": "arn:aws:codestar-connections:us-east-1:account_id:connection/aEXAMPLE-f055-4843-adef-4ceaefcb2167",
           "OwnerId": "owner_id",
           "ProviderType": "GitHub",
           "RepositoryLinkArn": "arn:aws:codestar-connections:us-east-1:account_id:repository-link/6053346f-8a33-4edb-9397-10394b695173",
           "RepositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
           "RepositoryName": "MyRepo",
           "Tags": []
       }
   }
   ```

# 列出存储库链接
<a name="repositorylinks-list"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 中的**list-repository-links**命令列出您账户的存储库链接。

**列出存储库链接**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**list-repository-links **命令。

   ```
   aws codeconnections list-repository-links
   ```

1. 此命令将返回以下输出。

   ```
   {
       "RepositoryLinks": [
           {
               "ConnectionArn": "arn:aws:codestar-connections:us-east-1:account_id:connection/001f5be2-a661-46a4-b96b-4d277cac8b6e",
               "OwnerId": "owner_id",
               "ProviderType": "GitHub",
               "RepositoryLinkArn": "arn:aws:codestar-connections:us-east-1:account_id:repository-link/6053346f-8a33-4edb-9397-10394b695173",
               "RepositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
               "RepositoryName": "MyRepo",
               "Tags": []
           }
       ]
   }
   ```

# 删除存储库链接
<a name="repositorylinks-delete"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 中的**delete-repository-link**命令来删除存储库链接。

必须先删除与存储库链接关联的所有同步配置，然后才能删除该存储库链接。

**重要**  
运行该命令后，将删除存储库链接。不显示任何确认对话框。您可以创建新的存储库链接，但无法重复使用 Amazon 资源名称 (ARN)。

**删除存储库链接**
+ 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。使用运行**delete-repository-link**命令，指定 AWS CLI 要删除的存储库链接的 ID。

  ```
  aws codeconnections delete-repository-link --repository-link-id 6053346f-8a33-4edb-9397-10394b695173
  ```

  该命令不返回任何内容。

# 查看存储库链接详细信息
<a name="repositorylinks-view-details"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 中的**get-repository-link**命令来查看有关存储库链接的详细信息。

**查看存储库链接详细信息**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**get-repository-link**命令，指定存储库链接 ID。

   ```
   aws codestar-connections get-repository-link --repository-link-id 6053346f-8a33-4edb-9397-10394b695173
   ```

1. 此命令将返回以下输出。

   ```
   {
       "RepositoryLinkInfo": {
           "ConnectionArn": "arn:aws:codestar-connections:us-east-1:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f",
           "OwnerId": "owner_id",
           "ProviderType": "GitHub",
           "RepositoryLinkArn": "arn:aws:codestar-connections:us-east-1:account_id:repository-link/be8f2017-b016-4a77-87b4-608054f70e77",
           "RepositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
           "RepositoryName": "MyRepo",
           "Tags": []
       }
   }
   ```

# 使用同步配置
<a name="syncconfigurations"></a>

同步配置在指定的存储库和连接之间创建关联。使用同步配置可同步 Git 存储库中的内容以更新指定 AWS 资源。

有关连接的更多信息，请参阅 [AWS CodeConnections API 参考](https://docs.aws.amazon.com/codestar-connections/latest/APIReference/Welcome.html)。

**Topics**
+ [创建同步配置](syncconfigurations-create.md)
+ [更新同步配置](syncconfigurations-update.md)
+ [列出同步配置](syncconfigurations-list.md)
+ [删除同步配置](syncconfigurations-delete.md)
+ [查看同步配置详细信息](syncconfigurations-view-details.md)

# 创建同步配置
<a name="syncconfigurations-create"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 中的**create-repository-link**命令在连接和要同步到的外部存储库之间创建链接。

在创建同步配置之前，您必须已经在连接和第三方存储库之间创建了存储库链接。

**创建同步配置**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**create-repository-link**命令。指定关联连接的 ARN、所有者 ID 和存储库名称。以下命令将创建一个同步配置，其同步类型适用于 CloudFormation中的资源。它还指定了存储库分支和存储库中的配置文件。在此示例中，资源是一个名为 **`mystack`** 的堆栈。

   ```
   aws codeconnections create-sync-configuration --branch main --config-file filename --repository-link-id be8f2017-b016-4a77-87b4-608054f70e77 --resource-name mystack --role-arn arn:aws:iam::account_id:role/myrole --sync-type CFN_STACK_SYNC
   ```

1. 此命令将返回以下输出。

   ```
   {
       "SyncConfiguration": {
           "Branch": "main",
           "ConfigFile": "filename",
           "OwnerId": "account_id",
           "ProviderType": "GitHub",
           "RepositoryLinkId": "be8f2017-b016-4a77-87b4-608054f70e77",
           "RepositoryName": "MyRepo",
           "ResourceName": "mystack",
           "RoleArn": "arn:aws:iam::account_id:role/myrole",
           "SyncType": "CFN_STACK_SYNC"
       }
   ```

# 更新同步配置
<a name="syncconfigurations-update"></a>

您可以在 AWS Command Line Interface (AWS CLI) 中使用 **update-sync-configuration** 命令更新指定同步配置。

您可以更新同步配置的以下信息：
+ `--branch`
+ `--config-file`
+ `--repository-link-id`
+ `--resource-name`
+ `--role-arn`

**更新同步配置**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。使用运行**update-sync-configuration**命令，指定要更新的值以及资源名称和同步类型。 AWS CLI 例如，以下命令使用 `--branch` 参数更新与同步配置关联的分支名称。

   ```
   aws codeconnections update-sync-configuration --sync-type CFN_STACK_SYNC --resource-name mystack --branch feature-branch
   ```

1. 此命令将返回以下输出。

   ```
   {
       "SyncConfiguration": {
           "Branch": "feature-branch",
           "ConfigFile": "filename.yaml",
           "OwnerId": "owner_id",
           "ProviderType": "GitHub",
           "RepositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
           "RepositoryName": "MyRepo",
           "ResourceName": "mystack",
           "RoleArn": "arn:aws:iam::account_id:role/myrole",
           "SyncType": "CFN_STACK_SYNC"
       }
   ```

# 列出同步配置
<a name="syncconfigurations-list"></a>

您可以在 AWS Command Line Interface (AWS CLI) 中使用 **list-sync-configurations** 命令列出您账户中的存储库链接。

**列出存储库链接**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。使用运行**list-sync-configurations**命令，指定同步类型和存储库链接 ID。 AWS CLI 

   ```
   aws codeconnections list-sync-configurations --repository-link-id 6053346f-8a33-4edb-9397-10394b695173  --sync-type CFN_STACK_SYNC 
   ```

1. 此命令将返回以下输出。

   ```
   {
       "SyncConfigurations": [
           {
               "Branch": "main",
               "ConfigFile": "filename.yaml",
               "OwnerId": "owner_id",
               "ProviderType": "GitHub",
               "RepositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
               "RepositoryName": "MyRepo",
               "ResourceName": "mystack",
               "RoleArn": "arn:aws:iam::account_id:role/myrole",
               "SyncType": "CFN_STACK_SYNC"
           }
       ]
   }
   ```

# 删除同步配置
<a name="syncconfigurations-delete"></a>

您可以在 AWS Command Line Interface (AWS CLI) 中使用 **delete-sync-configuration** 命令删除同步配置。

**重要**  
运行该命令后，将删除同步配置。不显示任何确认对话框。您可以创建新的同步配置，但无法重复使用 Amazon 资源名称 (ARN)。

**删除同步配置**
+ 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。使用运行**delete-sync-configuration**命令，为 AWS CLI 要删除的同步配置指定同步类型和资源名称。

  ```
  aws codeconnections delete-sync-configuration --sync-type CFN_STACK_SYNC --resource-name mystack
  ```

  该命令不返回任何内容。

# 查看同步配置详细信息
<a name="syncconfigurations-view-details"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 中的**get-sync-configuration**命令来查看同步配置的详细信息。

**查看同步配置详细信息**

1. 打开终端（Linux、macOS 或 Unix）或命令提示符（Windows）。 AWS CLI 使用运行**get-sync-configuration**命令，指定存储库链接 ID。

   ```
   aws codeconnections get-sync-configuration --sync-type CFN_STACK_SYNC --resource-name mystack
   ```

1. 此命令将返回以下输出。

   ```
   {
       "SyncConfiguration": {
           "Branch": "main",
           "ConfigFile": "filename",
           "OwnerId": "owner_id",
           "ProviderType": "GitHub",
           "RepositoryLinkId": "be8f2017-b016-4a77-87b4-608054f70e77",
           "RepositoryName": "MyRepo",
           "ResourceName": "mystack",
           "RoleArn": "arn:aws:iam::account_id:role/myrole",
           "SyncType": "CFN_STACK_SYNC"
       }
   }
   ```

# 使用记录 AWS CodeConnections API 调用 AWS CloudTrail
<a name="logging-using-cloudtrail-connections"></a>

AWS CodeConnections 与 AWS CloudTrail一项服务集成，该服务提供用户、角色或 AWS 服务所执行操作的记录。 CloudTrail 将通知的所有 API 调用捕获为事件。捕获的调用包含来自开发人员工具控制台的调用和对 AWS CodeConnections API 操作的代码调用。

如果您创建跟踪，则可以允许向亚马逊简单存储服务 (Amazon S3) Service 存储桶持续传送事件，包括用于通知的事件。 CloudTrail 如果您未配置跟踪，您仍然可以在 CloudTrail 控制台的 “事件**历史记录” 中查看最新的事件**。使用收集的信息 CloudTrail，您可以确定向哪个请求发出 AWS CodeConnections、发出请求的 IP 地址、谁发出了请求、何时发出请求以及其他详细信息。

有关更多信息，请参阅 [AWS CloudTrail 《用户指南》](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/)。

## AWS CodeConnections 信息在 CloudTrail
<a name="service-name-info-in-cloudtrail-connections"></a>

CloudTrail 在您创建 AWS 账户时已在您的账户上启用。当活动发生在中时 AWS CodeConnections，该活动会与其他 AWS 服务 CloudTrail 事件一起记录在**事件历史**记录中。您可以在自己的 AWS 账户中查看、搜索和下载最近发生的事件。有关更多信息，请参阅《*AWS CloudTrail 用户指南》*中的[使用 CloudTrail 事件历史查看事件](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)。

要持续记录您 AWS 账户中的事件，包括其中的事件 AWS CodeConnections，请创建跟踪。*跟踪*允许 CloudTrail 将日志文件传输到 Amazon S3 存储桶。默认情况下，在控制台中创建跟踪记录时，此跟踪记录应用于所有 AWS 区域。跟踪记录 AWS 分区中所有区域的事件，并将日志文件传送到您指定的 Amazon S3 存储桶。此外，您可以配置其他 AWS 服务，以进一步分析和处理 CloudTrail 日志中收集的事件数据。

有关更多信息，请参阅《AWS CloudTrail 用户指南》**中的以下主题：
+ [创建跟踪记录概述](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+ [CloudTrail 支持的服务和集成](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html#cloudtrail-aws-service-specific-topics-integrations)
+ [配置 Amazon SNS 通知 CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/getting_notifications_top_level.html)
+ [接收来自多个区域的 CloudTrail 日志文件](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html)
+ [接收来自多个账户的 CloudTrail 日志文件](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html)

所有 AWS CodeConnections 操作均由 API 参考记录 CloudTrail 并记录在 [AWS CodeConnections API 参考](https://docs.aws.amazon.com/codeconnections/latest/APIReference/Welcome.html)中。例如，调用`DeleteConnection`和`GetConnection`操作会在 CloudTrail 日志文件中生成条目。`CreateConnection`

每个事件或日志条目都包含有关生成请求的人员信息。身份信息有助于您确定以下内容：
+ 使用根用户凭证还是其他 IAM 凭证发出请求。
+ 请求是使用角色还是联合用户的临时安全凭证发出的。
+ 请求是否由其他 AWS 服务发出。

有关更多信息，请参阅 [CloudTrail userIdentity 元素](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)。

## 了解日志文件条目
<a name="understanding-service-name-entries-connections"></a>

*跟踪*是一种配置，允许将事件作为日志文件传输到您指定的 Amazon S3 存储桶。 CloudTrail 日志文件包含一个或多个日志条目。*事件*代表来自任何来源的单个请求，包括有关请求的操作、操作的日期和时间、请求参数等的信息。 CloudTrail 日志文件不是公共 API 调用的有序堆栈跟踪，因此它们不会按任何特定的顺序出现。

## `CreateConnection` 示例
<a name="w2aab5c25c39c13"></a>

以下示例显示了演示该`CreateConnection`操作的 CloudTrail 日志条目。

```
{
    "EventId": "b4374fde-c544-4d43-b511-7d899568e55a",
    "EventName": "CreateConnection",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-09T15:13:46-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:user/Mary_Major",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-09T23:03:08Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-09T23:13:46Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "CreateConnection",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.create-connection",
        "requestParameters": {
            "providerType": "GitHub",
            "connectionName": "my-connection"
        },
        "responseElements": {
            "connectionArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/df03df74-8e05-45cf-b420-b39e389dd264"
        },
        "requestID": "57640a88-97b7-481d-9665-cfd79a681379",
        "eventID": "b4374fde-c544-4d43-b511-7d899568e55a",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `CreateHost` 示例
<a name="w2aab5c25c39c15"></a>

以下示例显示了演示该`CreateHost`操作的 CloudTrail 日志条目。

```
{
    "EventId": "af4ce349-9f21-43fb-8003-267fbf9b1a93",
    "EventName": "CreateHost",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-11T12:43:06-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-11T20:09:35Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-11T20:43:06Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "CreateHost",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "52.94.133.137",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.create-host",
        "requestParameters": {
            "name": "Demo1",
            "providerType": "GitHubEnterpriseServer",
            "providerEndpoint": "IP"
        },
        "responseElements": {
            "hostArn": "arn:aws:codeconnections:us-east-1:123456789012:host/Demo1-EXAMPLE"
        },
        "requestID": "974459b3-8a04-4cff-9c8f-0c88647831cc",
        "eventID": "af4ce349-9f21-43fb-8003-267fbf9b1a93",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `CreateSyncConfiguration` 示例
<a name="w2aab5c25c39c17"></a>

以下示例显示了演示该`CreateSyncConfiguration`操作的 CloudTrail 日志条目。

```
{
    "EventId": "be1397e1-eefb-49f0-b4ee-2708c45e94e7",
    "EventName": "CreateSyncConfiguration",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-24T17:38:30+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-24T17:34:55Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-24T17:38:30Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "CreateSyncConfiguration",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6 Linux/5.10.205-172.804.amzn2int.x86_64exe/x86_64.amzn.2prompt/offcommand/codeconnections.create-sync-configuration",
        "requestParameters": {
            "branch": "master",
            "configFile": "filename",
            "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
            "resourceName": "mystack",
            "roleArn": "arn:aws:iam::123456789012:role/my-role",
            "syncType": "CFN_STACK_SYNC"
        },
        "responseElements": {
            "syncConfiguration": {
                "branch": "main",
                "configFile": "filename",
                "ownerId": "owner_ID",
                "providerType": "GitHub",
                "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
                "repositoryName": "MyGitHubRepo",
                "resourceName": "mystack",
                "roleArn": "arn:aws:iam::123456789012:role/my-role",
                "syncType": "CFN_STACK_SYNC"
            }
        },
        "requestID": "bad2f662-3f2a-42c0-b638-6115384896f6",
        "eventID": "be1397e1-eefb-49f0-b4ee-2708c45e94e7",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `DeleteConnection` 示例
<a name="w2aab5c25c39c19"></a>

以下示例显示了演示该`DeleteConnection`操作的 CloudTrail 日志条目。

```
{
    "EventId": "672837cd-f977-4fe2-95c7-14280b2af76c",
    "EventName": "DeleteConnection",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-10T13:00:50-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::001919387613:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-10T20:41:16Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-10T21:00:50Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "DeleteConnection",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.delete-connection",
        "requestParameters": {
            "connectionArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/df03df74-8e05-45cf-b420-b39e389dd264"
        },
        "responseElements": null,
        "requestID": "4f26ceab-d665-41df-9e15-5ed0fbb4eca6",
        "eventID": "672837cd-f977-4fe2-95c7-14280b2af76c",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `DeleteHost` 示例
<a name="w2aab5c25c39c21"></a>

以下示例显示了演示该`DeleteHost`操作的 CloudTrail 日志条目。

```
{
    "EventId": "6018ba5c-6f24-4a30-b201-16ec19a1687a",
    "EventName": "DeleteHost",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-11T12:56:47-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-11T20:09:35Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-11T20:56:47Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "DeleteHost",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.delete-host",
        "requestParameters": {
            "hostArn": "arn:aws:codeconnections:us-east-1:123456789012:host/Demo1-EXAMPLE"
        },
        "responseElements": null,
        "requestID": "1b244528-143a-4028-b9a4-9479e342bce5",
        "eventID": "6018ba5c-6f24-4a30-b201-16ec19a1687a",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `DeleteSyncConfiguration` 示例
<a name="w2aab5c25c39c23"></a>

以下示例显示了演示该`DeleteSyncConfiguration`操作的 CloudTrail 日志条目。

```
{
    "EventId": "588660c7-3202-4998-a906-7bb72bcf4438",
    "EventName": "DeleteSyncConfiguration",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-24T17:41:59+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-24T17:34:55Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-24T17:41:59Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "DeleteSyncConfiguration",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "52.94.133.142",
        "userAgent": "aws-cli/2.15.11Python/3.11.6Linux/5.10.205-172.804.amzn2int.x86_64exe/x86_64.amzn.2prompt/offcommand/codeconnections.delete-sync-configuration",
        "requestParameters": {
            "syncType": "CFN_STACK_SYNC",
            "resourceName": "mystack"
        },
        "responseElements": null,
        "requestID": "221e0b1c-a50e-4cf0-ab7d-780154e29c94",
        "eventID": "588660c7-3202-4998-a906-7bb72bcf4438",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `GetConnection` 示例
<a name="w2aab5c25c39c25"></a>

以下示例显示了演示该`GetConnection`操作的 CloudTrail 日志条目。

```
{
    "EventId": "672837cd-f977-4fe2-95c7-14280b2af76c",
    "EventName": "DeleteConnection",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-10T13:00:50-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-10T20:41:16Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-10T21:00:50Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "DeleteConnection",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.delete-connection",
        "requestParameters": {
            "connectionArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/df03df74-8e05-45cf-b420-b39e389dd264"
        },
        "responseElements": null,
        "requestID": "4f26ceab-d665-41df-9e15-5ed0fbb4eca6",
        "eventID": "672837cd-f977-4fe2-95c7-14280b2af76c",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "001919387613",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `GetHost` 示例
<a name="w2aab5c25c39c27"></a>

以下示例显示了演示该`GetHost`操作的 CloudTrail 日志条目。

```
{
    "EventId": "faa147e7-fe7c-4ab9-a11b-2568a2883c01",
    "EventName": "GetHost",
    "ReadOnly": "true",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-11T12:44:34-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-11T20:09:35Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-11T20:44:34Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "GetHost",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "52.94.133.137",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.get-host",
        "requestParameters": {
            "hostArn": "arn:aws:codeconnections:us-east-1:123456789012:host/Demo1-EXAMPLE"
        },
        "responseElements": null,
        "requestID": "0ad61bb6-f88f-4f96-92fe-997f017ec2bb",
        "eventID": "faa147e7-fe7c-4ab9-a11b-2568a2883c01",
        "readOnly": true,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `GetRepositoryLink` 示例
<a name="w2aab5c25c39c29"></a>

以下示例显示了演示该`GetRepositoryLink`操作的 CloudTrail 日志条目。

```
{
    "EventId": "b46acb67-3612-41c7-8987-adb6c9ed4ad4",
    "EventName": "GetRepositoryLink",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-24T02:59:28+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-24T02:58:52Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-24T02:59:28Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "GetRepositoryLink",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6Linux/5.10.205-172.804.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/codeconnections.get-repository-link",
        "requestParameters": {
            "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173"
        },
        "responseElements": {
            "repositoryLinkInfo": {
                "connectionArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/7df263cc-f055-4843-adef-4ceaefcb2167",
                "ownerId": "123456789012",
                "providerType": "GitHub",
                "repositoryLinkArn": "arn:aws:codeconnections:us-east-1:123456789012:repository-link/6053346f-8a33-4edb-9397-10394b695173",
                "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
                "repositoryName": "MyGitHubRepo"
            }
        },
        "requestID": "d46704dd-dbe9-462f-96a6-022a8d319fd1",
        "eventID": "b46acb67-3612-41c7-8987-adb6c9ed4ad4",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-ea-1.codeconnections.aws.dev"
        }
    }
}
```

## `GetRepositorySyncStatus` 示例
<a name="w2aab5c25c39c31"></a>

以下示例显示了演示该[GetRepositorySyncStatus](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_GetRepositorySyncStatus.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "3e183b74-d8c4-4ad3-9de3-6b5721c522e9",
    "EventName": "GetRepositorySyncStatus",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-25T03:41:44+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-25T02:56:55Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-25T03:41:44Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "GetRepositorySyncStatus",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "52.94.133.138",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6 Linux/5.10.205-172.807.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/codeconnections.get-repository-sync-status",
        "errorCode": "ResourceNotFoundException",
        "errorMessage": "Could not find a sync status for repository link:6053346f-8a33-4edb-9397-10394b695173",
        "requestParameters": {
            "branch": "feature-branch",
            "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
            "syncType": "CFN_STACK_SYNC"
        },
        "responseElements": null,
        "requestID": "e0cee3ee-31e8-4ef5-b749-96cdcabbe36f",
        "eventID": "3e183b74-d8c4-4ad3-9de3-6b5721c522e9",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `GetResourceSyncStatus` 示例
<a name="w2aab5c25c39c33"></a>

以下示例显示了演示该[GetResourceSyncStatus](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_GetResourceSyncStatus.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "9c47054e-f6f6-4345-96d0-9a5af3954a8d",
    "EventName": "GetResourceSyncStatus",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-25T03:44:11+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-25T02:56:55Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-25T03:44:11Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "GetResourceSyncStatus",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6 Linux/5.10.205-172.807.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/codeconnections.get-resource-sync-status",
        "requestParameters": {
            "resourceName": "mystack",
            "syncType": "CFN_STACK_SYNC"
        },
        "responseElements": null,
        "requestID": "e74b5503-d651-4920-9fd2-0f40fb5681e0",
        "eventID": "9c47054e-f6f6-4345-96d0-9a5af3954a8d",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `GetSyncBlockerSummary` 示例
<a name="w2aab5c25c39c35"></a>

以下示例显示了演示该[GetSyncBlockerSummary](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_GetSyncBlockerSummary.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "c16699ba-a788-476d-8c6c-47511d76309e",
    "EventName": "GetSyncBlockerSummary",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-25T03:03:02+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-25T02:56:55Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-25T03:03:02Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "GetSyncBlockerSummary",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6 Linux/5.10.205-172.807.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/codeconnections.get-sync-blocker-summary",
        "requestParameters": {
            "syncType": "CFN_STACK_SYNC",
            "resourceName": "mystack"
        },
        "responseElements": {
            "syncBlockerSummary": {
                "resourceName": "mystack",
                "latestBlockers": []
            }
        },
        "requestID": "04240091-eb25-4138-840d-776f8e5375b4",
        "eventID": "c16699ba-a788-476d-8c6c-47511d76309e",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `GetSyncConfiguration` 示例
<a name="w2aab5c25c39c37"></a>

以下示例显示了演示该[GetSyncConfiguration](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_GetSyncConfiguration.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "bab9aa16-4553-4206-a1ea-88219233dd25",
    "EventName": "GetSyncConfiguration",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-24T17:40:40+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-24T17:34:55Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-24T17:40:40Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "GetSyncConfiguration",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "52.94.133.142",
        "userAgent": "aws-cli/2.15.11Python/3.11.6Linux/5.10.205-172.804.amzn2int.x86_64exe/x86_64.amzn.2prompt/offcommand/codeconnections.get-sync-configuration",
        "requestParameters": {
            "syncType": "CFN_STACK_SYNC",
            "resourceName": "mystack"
        },
        "responseElements": {
            "syncConfiguration": {
                "branch": "main",
                "configFile": "filename",
                "ownerId": "123456789012",
                "providerType": "GitHub",
                "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
                "repositoryName": "MyGitHubRepo",
                "resourceName": "mystack",
                "roleArn": "arn:aws:iam::123456789012:role/my-role",
                "syncType": "CFN_STACK_SYNC"
            }
        },
        "requestID": "0aa8e43a-6e34-4d8f-89fb-5c2d01964b35",
        "eventID": "bab9aa16-4553-4206-a1ea-88219233dd25",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `ListConnections` 示例
<a name="w2aab5c25c39c39"></a>

以下示例显示了演示该[ListConnections](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_ListConnections.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "3f8d80fe-fbe1-4755-903c-4f58fc8262fa",
    "EventName": "ListConnections",
    "ReadOnly": "true",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-08T14:11:23-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-08T22:11:02Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-08T22:11:23Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "ListConnections",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/1.18.147 Python/2.7.18 Linux/5.10.201-168.748.amzn2int.x86_64 botocore/1.18.6",
        "requestParameters": {
            "maxResults": 50
        },
        "responseElements": null,
        "requestID": "5d456d59-3e92-44be-b941-a429df59e90b",
        "eventID": "3f8d80fe-fbe1-4755-903c-4f58fc8262fa",
        "readOnly": true,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `ListHosts` 示例
<a name="w2aab5c25c39c41"></a>

以下示例显示了演示该[ListHosts](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_ListHosts.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "f6e9e831-feaf-4ad1-ac47-51681109c401",
    "EventName": "ListHosts",
    "ReadOnly": "true",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-11T13:00:55-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-11T20:09:35Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-11T21:00:55Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "ListHosts",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.list-hosts",
        "requestParameters": {
            "maxResults": 50
        },
        "responseElements": null,
        "requestID": "ea87e2cf-6bf1-4cc7-9666-f3fad85d6d83",
        "eventID": "f6e9e831-feaf-4ad1-ac47-51681109c401",
        "readOnly": true,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `ListRepositoryLinks` 示例
<a name="w2aab5c25c39c43"></a>

以下示例显示了演示该[ListRepositoryLinks](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_ListRepositoryLinks.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "4f714bbb-0716-4f6e-9868-9b379b30757f",
    "EventName": "ListRepositoryLinks",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-24T01:57:29+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-24T01:43:49Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-24T01:57:29Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "ListRepositoryLinks",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11Python/3.11.6Linux/5.10.205-172.804.amzn2int.x86_64exe/x86_64.amzn.2prompt/offcommand/codeconnections.list-repository-links",
        "requestParameters": {
            "maxResults": 50
        },
        "responseElements": {
            "repositoryLinks": [
                {
                    "connectionArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/001f5be2-a661-46a4-b96b-4d277cac8b6e",
                    "ownerId": "123456789012",
                    "providerType": "GitHub",
                    "repositoryLinkArn": "arn:aws:codeconnections:us-east-1:123456789012:repository-link/be8f2017-b016-4a77-87b4-608054f70e77",
                    "repositoryLinkId": "be8f2017-b016-4a77-87b4-608054f70e77",
                    "repositoryName": "MyGitHubRepo"
                },
                {
                    "connectionArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/7df263cc-f055-4843-adef-4ceaefcb2167",
                    "ownerId": "owner",
                    "providerType": "GitHub",
                    "repositoryLinkArn": "arn:aws:codeconnections:us-east-1:123456789012:repository-link/6053346f-8a33-4edb-9397-10394b695173",
                    "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
                    "repositoryName": "MyGitHubRepo"
                }
            ]
        },
        "requestID": "7c8967a9-ec15-42e9-876b-0ef58681ec55",
        "eventID": "4f714bbb-0716-4f6e-9868-9b379b30757f",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `ListRepositorySyncDefinitions` 示例
<a name="w2aab5c25c39c45"></a>

以下示例显示了演示该[ListRepositorySyncDefinitions](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_ListRepositorySyncDefinitions.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "12e52dbb-b00d-49ad-875a-3efec36e5aa1",
    "EventName": "ListRepositorySyncDefinitions",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-25T16:56:19+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-25T16:43:03Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-25T16:56:19Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "ListRepositorySyncDefinitions",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6 Linux/5.10.205-172.807.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/codeconnections.list-repository-sync-definitions",
        "requestParameters": {
            "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
            "syncType": "CFN_STACK_SYNC",
            "maxResults": 50
        },
        "responseElements": {
            "repositorySyncDefinitions": []
        },
        "requestID": "df31d11d-5dc7-459b-9a8f-396b4769cdd9",
        "eventID": "12e52dbb-b00d-49ad-875a-3efec36e5aa1",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
```

## `ListSyncConfigurations` 示例
<a name="w2aab5c25c39c47"></a>

以下示例显示了演示该[ListSyncConfigurations](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_ListSyncConfigurations.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "aa4ae557-ec31-4151-8d21-9e74dd01344c",
    "EventName": "ListSyncConfigurations",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-24T17:42:06+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-24T17:34:55Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-24T17:42:06Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "ListSyncConfigurations",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6 Linux/5.10.205-172.804.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/offcommand/codeconnections.list-sync-configurations",
        "requestParameters": {
            "maxResults": 50,
            "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
            "syncType": "CFN_STACK_SYNC"
        },
        "responseElements": {
            "syncConfigurations": [
                {
                    "branch": "feature-branch",
                    "configFile": "filename.yaml",
                    "ownerId": "owner",
                    "providerType": "GitHub",
                    "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
                    "repositoryName": "MyGitHubRepo",
                    "resourceName": "dkstacksync",
                    "roleArn": "arn:aws:iam::123456789012:role/my-role",
                    "syncType": "CFN_STACK_SYNC"
                }
            ]
        },
        "requestID": "7dd220b5-fc0f-4023-aaa0-9555cfe759df",
        "eventID": "aa4ae557-ec31-4151-8d21-9e74dd01344c",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `ListTagsForResource` 示例
<a name="w2aab5c25c39c49"></a>

以下示例显示了演示该[ListTagsForResource](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_ListTagsForResource.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "fc501054-d68a-4325-824c-0e34062ef040",
    "EventName": "ListTagsForResource",
    "ReadOnly": "true",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-25T17:16:56+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "dMary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-25T16:43:03Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-25T17:16:56Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "ListTagsForResource",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6 Linux/5.10.205-172.807.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/codeconnections.list-tags-for-resource",
        "requestParameters": {
            "resourceArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/9703702f-bebe-41b7-8fc4-8e6d2430a330"
        },
        "responseElements": null,
        "requestID": "994584a3-4807-47f2-bb1b-a64f0af6c250",
        "eventID": "fc501054-d68a-4325-824c-0e34062ef040",
        "readOnly": true,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `TagResource` 示例
<a name="w2aab5c25c39c51"></a>

以下示例显示了演示该[TagResource](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_TagResource.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "b7fbc943-2dd1-4c5b-a5ad-fc6d60a011f1",
    "EventName": "TagResource",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-11T12:22:11-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-11T20:09:35Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-11T20:22:11Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "TagResource",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.tag-resource",
        "requestParameters": {
            "resourceArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/8dcf69d1-3316-4392-ae09-71e038adb6ed",
            "tags": [
                {
                    "key": "Demo1",
                    "value": "hhvh1"
                }
            ]
        },
        "responseElements": null,
        "requestID": "ba382c33-7124-48c8-a23a-25816ce27604",
        "eventID": "b7fbc943-2dd1-4c5b-a5ad-fc6d60a011f1",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `UnTagResource` 示例
<a name="w2aab5c25c39c53"></a>

以下示例显示了演示该[UntagResource](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_UntagResource.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "8a85cdee-2586-4679-be18-eec34204bc7e",
    "EventName": "UntagResource",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-11T12:31:14-08:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-11T20:09:35Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-11T20:31:14Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "UntagResource",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.untag-resource",
        "requestParameters": {
            "resourceArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/8dcf69d1-3316-4392-ae09-71e038adb6ed",
            "tagKeys": [
                "Project",
                "ReadOnly"
            ]
        },
        "responseElements": null,
        "requestID": "05ef26a4-8c39-4f72-89bf-0c056c51b8d7",
        "eventID": "8a85cdee-2586-4679-be18-eec34204bc7e",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `UpdateHost` 示例
<a name="w2aab5c25c39c55"></a>

以下示例显示了演示该[UpdateHost](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_UpdateHost.html)操作的 CloudTrail 日志条目。

```
"Events": [{
        "EventId": "4307cf7d-6d1c-40d9-a659-1bb41b31a2b6",
        "EventName": "UpdateHost",
        "ReadOnly": "false",
        "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
        "EventTime": "2024-01-11T12:54:32-08:00",
        "EventSource": "codeconnections.amazonaws.com",
        "Username": "Mary_Major",
        "Resources": [],
        "CloudTrailEvent": "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-11T20:09:35Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-11T20:54:32Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "UpdateHost",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.13.30 Python/3.11.6 Darwin/23.2.0 exe/x86_64 prompt/off command/codeconnections.update-host",
        "requestParameters": {
            "hostArn": "arn:aws:codeconnections:us-east-1:123456789012:host/Demo1-34e70ecb",
            "providerEndpoint": "https://54.218.245.167"
        },
        "responseElements": null,
        "requestID": "b17f46ac-1acb-44ab-a9f5-c35c20233441",
        "eventID": "4307cf7d-6d1c-40d9-a659-1bb41b31a2b6",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
```

## `UpdateRepositoryLink` 示例
<a name="w2aab5c25c39c57"></a>

以下示例显示了演示该[UpdateRepositoryLink](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_UpdateRepositoryLink.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "be358c9a-5a8f-467e-8585-2860070be4fe",
    "EventName": "UpdateRepositoryLink",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-24T02:03:24+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-24T01:43:49Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-24T02:03:24Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "UpdateRepositoryLink",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11Python/3.11.6Linux/5.10.205-172.804.amzn2int.x86_64exe/x86_64.amzn.2prompt/offcommand/codeconnections.update-repository-link",
        "requestParameters": {
            "connectionArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/7df263cc-f055-4843-adef-4ceaefcb2167",
            "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173"
        },
        "responseElements": {
            "repositoryLinkInfo": {
                "connectionArn": "arn:aws:codeconnections:us-east-1:123456789012:connection/7df263cc-f055-4843-adef-4ceaefcb2167",
                "ownerId": "owner",
                "providerType": "GitHub",
                "repositoryLinkArn": "arn:aws:codeconnections:us-east-1:123456789012:repository-link/6053346f-8a33-4edb-9397-10394b695173",
                "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
                "repositoryName": "MyGitHubRepo"
            }
        },
        "additionalEventData": {
            "providerAction": "UpdateRepositoryLink"
        },
        "requestID": "e01eee49-9393-4983-89e4-d1b3353a70d9",
        "eventID": "be358c9a-5a8f-467e-8585-2860070be4fe",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `UpdateSyncBlocker` 示例
<a name="w2aab5c25c39c59"></a>

以下示例显示了演示该[UpdateSyncBlocker](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_UpdateSyncBlocker.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "211d19db-9f71-4d93-bf90-10f9ddefed88",
    "EventName": "UpdateSyncBlocker",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-25T03:01:05+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-25T02:56:55Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-25T03:01:05Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "UpdateSyncBlocker",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6 Linux/5.10.205-172.807.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/codeconnections.update-sync-blocker",
        "requestParameters": {
            "id": "ID",
            "syncType": "CFN_STACK_SYNC",
            "resourceName": "mystack",
            "resolvedReason": "Reason"
        },
        "responseElements": null,
        "requestID": "eea03b39-b299-4099-ba55-608480f8d96d",
        "eventID": "211d19db-9f71-4d93-bf90-10f9ddefed88",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

## `UpdateSyncConfiguration` 示例
<a name="w2aab5c25c39c61"></a>

以下示例显示了演示该[UpdateSyncConfiguration](https://docs.aws.amazon.com/codeconnections/latest/APIReference/API_UpdateSyncConfiguration.html)操作的 CloudTrail 日志条目。

```
{
    "EventId": "d961c94f-1881-4fe8-83bf-d04cb9f22577",
    "EventName": "UpdateSyncConfiguration",
    "ReadOnly": "false",
    "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "EventTime": "2024-01-24T17:40:55+00:00",
    "EventSource": "codeconnections.amazonaws.com",
    "Username": "Mary_Major",
    "Resources": [],
    "CloudTrailEvent": {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AssumedRole",
            "principalId": "AIDACKCEVSQ6C2EXAMPLE",
            "arn": "arn:aws:sts::123456789012:assumed-role/Admin/Mary_Major",
            "accountId": "123456789012",
            "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
            "sessionContext": {
                "sessionIssuer": {
                    "type": "Role",
                    "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                    "arn": "arn:aws:iam::123456789012:role/Admin",
                    "accountId": "123456789012",
                    "userName": "Admin"
                },
                "webIdFederationData": {},
                "attributes": {
                    "creationDate": "2024-01-24T17:34:55Z",
                    "mfaAuthenticated": "false"
                }
            }
        },
        "eventTime": "2024-01-24T17:40:55Z",
        "eventSource": "codeconnections.amazonaws.com",
        "eventName": "UpdateSyncConfiguration",
        "awsRegion": "us-east-1",
        "sourceIPAddress": "IP",
        "userAgent": "aws-cli/2.15.11 Python/3.11.6Linux/5.10.205-172.804.amzn2int.x86_64exe/x86_64.amzn.2prompt/offcommand/codeconnections.update-sync-configuration",
        "requestParameters": {
            "branch": "feature-branch",
            "resourceName": "mystack",
            "syncType": "CFN_STACK_SYNC"
        },
        "responseElements": {
            "syncConfiguration": {
                "branch": "feature-branch",
                "configFile": "filename",
                "ownerId": "owner",
                "providerType": "GitHub",
                "repositoryLinkId": "6053346f-8a33-4edb-9397-10394b695173",
                "repositoryName": "MyGitHubRepo",
                "resourceName": "mystack",
                "roleArn": "arn:aws:iam::123456789012:role/my-role",
                "syncType": "CFN_STACK_SYNC"
            }
        },
        "requestID": "2ca545ef-4395-4e1f-b14a-2750481161d6",
        "eventID": "d961c94f-1881-4fe8-83bf-d04cb9f22577",
        "readOnly": false,
        "eventType": "AwsApiCall",
        "managementEvent": true,
        "recipientAccountId": "123456789012",
        "eventCategory": "Management",
        "tlsDetails": {
            "clientProvidedHostHeader": "api.us-east-1.codeconnections.aws.dev"
        }
    }
}
```

# AWS CodeConnections 和接口 VPC 终端节点 (AWS PrivateLink)
<a name="vpc-interface-endpoints"></a>

您可以通过创建接*口 VPC 终端节点在您 AWS CodeConnections 的 VPC* 之间建立私有连接。接口端点由一项技术提供支持 [AWS PrivateLink](https://aws.amazon.com/privatelink)，该技术使您 AWS CodeConnections APIs 无需互联网网关、NAT 设备、VPN 连接或 Di AWS rect Connect 连接即可进行私密访问。您的 VPC 中的实例不需要公有 IP 地址即可与之通信 AWS CodeConnections APIs，因为您的 VPC 和 VPC 之间的流量 AWS CodeConnections 不会离开 Amazon 网络。

每个接口端点均由子网中的一个或多个[弹性网络接口](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html)表示。

有关更多信息，请参阅《Amazon VPC 用户指南》**中的[接口 VPC 端点 (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html)。

## AWS CodeConnections VPC 终端节点的注意事项
<a name="vpc-endpoint-considerations"></a>

在为设置接口 VPC 终端节点之前 AWS CodeConnections，请务必查看 *Amazon VPC 用户指南*中的[接口终端节点](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-interface-endpoints.html#vpc-endpoints-actions)。

AWS CodeConnections 支持从您的 VPC 调用其所有 API 操作。

所有 AWS CodeConnections 区域都支持 VPC 终端节点。

## VPC 终端节点概念
<a name="vpc-endpoint-concepts"></a>

以下是 VPC 终端节点的主要概念：

VPC 端点  
VPC 中可让您私下连接到服务的入口点。以下是不同类型的 VPC 终端节点。您可以创建受支持的服务所需要的 VPC 终端节点类型。  
+ [用于 AWS CodeConnections 操作的 VPC 终端节点](https://docs.aws.amazon.com/dtconsole/latest/userguide/vpc-interface-endpoints.html#vpc-endpoints-actions)
+ [网络挂钩的 VPC 终 AWS CodeConnections 端节点](https://docs.aws.amazon.com/dtconsole/latest/userguide/vpc-interface-endpoints.html#vpc-endpoints-webhooks)

AWS PrivateLink  
一种在 VPCs 和服务之间提供私有连接的技术。

## 用于 AWS CodeConnections 操作的 VPC 终端节点
<a name="vpc-endpoints-actions"></a>

您可以管理 AWS CodeConnections 服务的 VPC 终端节点。

### 为 AWS CodeConnections 操作创建接口 VPC 终端节点
<a name="vpc-endpoint-create"></a>

您可以使用 Amazon VPC 控制台或 AWS Command Line Interface (AWS CLI) 为 AWS CodeConnections 服务创建 VPC 终端节点。有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Creating an interface endpoint](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint)。

要开始使用与您的 VPC 的连接，请为创建接口 VPC 终端节点 AWS CodeConnections。为创建 VPC 终端节点时 AWS CodeConnections，选择**AWS 服务**，然后在**服务名称**中选择：
+ **com.amazonaws。 *region*.codestar-connections.api：**此选项为 API 操作创建 VPC 终端节点。 AWS CodeConnections 例如，如果您的用户使用 AWS CLI、 AWS CodeConnections API 或与之交互 AWS SDKs 来执行诸如、和之类 AWS CodeConnections 的操作 `CreateConnection``ListConnections`，请选择此选项`CreateHost`。

对于**启用 DNS 名称**选项，如果您为终端节点选择私有 DNS，则可以使用该区域的默认 DNS 名称发出 API 请求，例如`codestar-connections.us-east-1.amazonaws.com`。 AWS CodeConnections 

**重要**  
默认情况下，为服务和 M AWS arketplace 合作伙伴 AWS 服务创建的终端节点启用私有 DNS。

有关更多信息，请参阅《Amazon VPC 用户指南》**中的[通过接口端点访问服务](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#access-service-though-endpoint)。

### 为 AWS CodeConnections 操作创建 VPC 终端节点策略
<a name="vpc-endpoint-policy"></a>

您可以为 VPC 端点附加控制对 AWS CodeConnections的访问的端点策略。该策略指定以下信息：
+ 可执行操作的主体。
+ 可执行的操作。
+ 可对其执行操作的资源。

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

**注意**  
com.amazonaws。 *region*.codestar-connections.webhooks 端点不支持策略。

**示例：用于 AWS CodeConnections 操作的 VPC 终端节点策略**  
以下是的终端节点策略示例 AWS CodeConnections。当连接到终端节点时，此策略授予所有委托人对所有资源 AWS CodeConnections 执行所列操作的访问权限。

```
{
  "Statement": [
    {
      "Sid": "GetConnectionOnly",
      "Principal": "*",
      "Action": [
        "codestar-connections:GetConnection"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
```

## 网络挂钩的 VPC 终 AWS CodeConnections 端节点
<a name="vpc-endpoints-webhooks"></a>

AWS CodeConnections 当您创建或删除具有 VPC 配置的主机时，会为您创建 webhook 终端节点。终端节点名称为 **com.amazonaws。 *region*.codestar-connections.webhooks。**

借助 GitHub Webhook 的 VPC 终端节点，主机可以通过 Webhook 通过 Amazon 网络将事件数据发送到您的集成 AWS 服务。

**重要**  
在为 GitHub 企业服务器设置主机时， AWS CodeConnections 会为您创建 Webhook 事件数据的 VPC 终端节点。如果您在 2020 年 11 月 24 日之前创建了主机，并且想要使用 VPC PrivateLink Webhook 终端节点，则必须先[删除](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-delete.html)主机，然后再[创建](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-create.html)新主机。

AWS CodeConnections 管理这些端点的生命周期。要删除终端节点，您必须删除相应的主机资源。

### 如何使用 AWS CodeConnections 主机的 webhook 端点
<a name="vpc-webhook-endpoints"></a>

webhook 端点是发送来自第三方存储库的 Webhook 进行 AWS CodeConnections 处理的地方。Webhook 描述了客户操作。当您执行 `git push`，Webhook 终端节点会从提供程序接收一个详细说明推送的 Webhook。例如， AWS CodeConnections 可以通知启动 CodePipeline 您的管道。

对于不使用 VPC 的云提供商（例如 Bitbucket）或 GitHub 企业服务器主机，webhook VPC 终端节点不适用，因为这些提供商会将 webhook 发送到 AWS CodeConnections 未使用亚马逊网络的地方。

# 排除连接故障
<a name="troubleshooting-connections"></a>

以下信息可以帮助您解决 AWS CodeBuild AWS CodeDeploy、和中资源连接的常见问题 AWS CodePipeline。

**Topics**
+ [我无法创建连接](#troubleshooting-connections-cannot-create)
+ [当我尝试创建或完成连接时出现权限错误](#troubleshooting-connections-permissions-error-console)
+ [当我尝试使用连接时出现权限错误](#troubleshooting-connections-permissions-error-useconnection)
+ [Connection is not in available state or is no longer pending (确保您具有使用连接的权限，包括在提供程序位置列出可用存储库。连接不处于可用状态或不再处于待处理状态)](#troubleshooting-connections-error-notpending)
+ [为连接添加 GitClone 权限](#troubleshooting-connections-gitclone-permissions)
+ [主机不处于可用状态](#troubleshooting-connections-host-pending)
+ [故障排查有连接错误的主机](#troubleshooting-connections-host-errors)
+ [我无法为主机创建连接](#troubleshooting-connections-host-cannot-create)
+ [对主机的 VPC 配置进行故障排查](#troubleshooting-connections-host-vpc)
+ [GitHub 企业服务器连接的 webhook VPC 终端节点 (PrivateLink) 疑难解答](#troubleshooting-connections-host-vpc-webhook)
+ [对 2020 年 11 月 24 日之前创建的主机进行故障排查](#troubleshooting-connections-host-vpc-webhook-host)
+ [无法为 GitHub 存储库创建连接](#troubleshooting-connections-GitHub-admin)
+ [编辑您的 GitHub 企业服务器连接应用程序权限](#troubleshooting-GHES-app-permissions)
+ [连接时出现连接错误 GitHub：“出现问题，请确保您的浏览器已启用 Cookie” 或 “组织所有者必须安装 GitHub 应用程序”](#troubleshooting-GitHub-organization-owner)
+ [可能需要针对 IAM 策略更新资源中的连接服务前缀](#troubleshoot-service-prefix)
+ [由于使用控制台创建的资源中存在服务前缀，导致权限错误](#troubleshoot-service-prefix-console-permissions)
+ [已安装的提供商支持组织的连接和主机设置](#troubleshooting-organization-host)
+ [我想提高连接的限制](#troubleshooting-connections-limit-increase)

## 我无法创建连接
<a name="troubleshooting-connections-cannot-create"></a>

您可能无权创建连接。有关更多信息，请参阅 [的权限和示例 AWS CodeConnections](security_iam_id-based-policy-examples-connections.md)。

## 当我尝试创建或完成连接时出现权限错误
<a name="troubleshooting-connections-permissions-error-console"></a>

当您尝试在 CodePipeline 控制台中创建或查看连接时，可能会返回以下错误消息。

用户:*username*无权*permission*在资源上执行:*connection-ARN*

If this message appears, make sure that you have sufficient permissions.（用户：username 无权对资源：connection-ARN 执行操作：permission。如果出现此消息，请确保您有足够的权限。）

在 AWS Command Line Interface (AWS CLI) 或中创建和查看连接的权限 AWS 管理控制台 只是您在控制台上创建和完成连接所需的权限的一部分。只执行查看、编辑或创建连接，然后完成待处理连接所需的权限，应该分配给仅需执行某些任务的用户。有关更多信息，请参阅 [的权限和示例 AWS CodeConnections](security_iam_id-based-policy-examples-connections.md)。

## 当我尝试使用连接时出现权限错误
<a name="troubleshooting-connections-permissions-error-useconnection"></a>

如果您尝试在 CodePipeline 控制台中使用连接，即使您有权列出、获取和创建权限，也可能会返回以下一条或两条错误消息。

您无法对您的账户进行身份验证。

用户：无权*username*在资源上执行：codestar-connections：UseConnection *connection-ARN*

If this occurs, make sure that you have sufficient permissions. (您帐户的身份验证失败。用户：username 无权对资源：connection-ARN 执行：codestar-connections:UseConnection。如出现此消息，请确保您有足够的权限。)

Make sure you have the permissions to use a connection, including listing the available repositories in the provider location。有关更多信息，请参阅 [的权限和示例 AWS CodeConnections](security_iam_id-based-policy-examples-connections.md)。

## Connection is not in available state or is no longer pending (确保您具有使用连接的权限，包括在提供程序位置列出可用存储库。连接不处于可用状态或不再处于待处理状态)
<a name="troubleshooting-connections-error-notpending"></a>

如果控制台显示连接不处于可用状态的消息，请选择 **Complete connection (完成连接)**。

如果选择完成连接，并显示一条消息，指出连接未处于待处理状态，则可以取消请求，因为连接已处于可用状态。

## 为连接添加 GitClone 权限
<a name="troubleshooting-connections-gitclone-permissions"></a>

当您在源操作和操作中使用 AWS CodeStar 连接时，可以通过两种方式将输入构件传递给构建： CodeBuild 
+ 默认：源操作生成一个 zip 文件，其中包含要 CodeBuild下载的代码。
+ Git 克隆：源代码可以直接下载到构建环境中。

  Git 克隆模式允许您将源代码作为工作 Git 存储库进行交互。要使用此模式，必须向您的 CodeBuild 环境授予使用连接的权限。

要向您的 CodeBuild 服务角色策略添加权限，您需要创建一个附加到您的 CodeBuild 服务角色的客户托管策略。以下步骤会创建一个策略，其中 `UseConnection` 权限在 `action` 字段中指定，而 Amazon Resource Name (ARN) 在 `Resource` 字段中指定。

**使用控制台添加 UseConnection 权限**

1. 要查找管道的连接 ARN，请打开管道，然后在源操作中选择 (**i**) 图标。“配置” 窗格打开，连接 ARN 显示在旁边。**ConnectionArn**您将连接 ARN 添加到您的 CodeBuild 服务角色策略中。

1. 要查找您的 CodeBuild 服务角色，请打开管道中使用的构建项目，然后导航到**构建详细信息**选项卡。

1. 在 Environment (环境) 部分，选择 **Service role (服务角色)** 链接。这将打开 AWS Identity and Access Management (IAM) 控制台，您可以在其中添加授予连接访问权限的新策略。

1. 在 IAM 控制台中，选择 **Attach policies (附加策略)**，然后选择 **Create policy (创建策略)**。

   使用以下示例策略模板。将您的连接 ARN 添加到 `Resource` 字段，如此示例中所示。

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "codestar-connections:UseConnection",
               "Resource": "arn:aws:iam::*:role/Service*"
           }
       ]
   }
   ```

------

   在存储库的 **JSON** 选项卡上，粘贴您的策略。

1. 选择**查看策略**。为策略输入名称（例如 **connection-permissions**），然后选择 **Create policy (创建策略)**。

1. 返回到服务角色 **Attach Permissions (附加权限)** 页面上，刷新策略列表，然后选择您刚才创建的策略。选择**附加策略**。​

## 主机不处于可用状态
<a name="troubleshooting-connections-host-pending"></a>

如果控制台显示一条消息，指出主机不处于 `Available` 状态，则选择 **Set up host (设置主机)**。

创建主机的第一步将导致创建的主机现在处于 `Pending` 状态。将主机变为 `Available` 状态时，必须选择在控制台中设置主机。有关更多信息，请参阅 [设置待处理的主机](connections-host-setup.md)。

**注意**  
您不能使用 C AWS LI 来设置`Pending`主机。

## 故障排查有连接错误的主机
<a name="troubleshooting-connections-host-errors"></a>

如果底层 GitHub 应用程序被删除或修改，连接和主机可能会进入错误状态。无法恢复处于错误状态的主机和连接，必须重新创建主机。
+ 更改应用程序 pem 密钥、更改应用名称（初始创建后）等操作将导致主机和所有相关连接变为错误状态。

如果控制台或 CLI 返回 `Error` 状态的主机或与此类主机相关的连接，您可能需要执行以下步骤：
+ 删除并重新创建主机资源，然后重新安装主机注册应用程序。有关更多信息，请参阅 [创建主机](connections-host-create.md)。

## 我无法为主机创建连接
<a name="troubleshooting-connections-host-cannot-create"></a>

 

要创建连接或主机，必须满足以下条件。
+ 您的主机必须处于 **AVAILABLE (可用)** 状态。有关更多信息，请参阅 
+ 连接必须在与主机相同的区域中创建。

## 对主机的 VPC 配置进行故障排查
<a name="troubleshooting-connections-host-vpc"></a>

创建主机资源时，必须为安装 GitHub 企业服务器实例的基础设施提供网络连接或 VPC 信息。要对主机的 VPC 或子网配置进行故障排查，请使用此处显示的示例 VPC 信息作为参考。

**注意**  
使用本节排除与 Amazon VPC 中的 GitHub 企业服务器主机配置相关的疑难解答。有关与配置为使用 VPC 的 webhook 终端节点 (PrivateLink) 的连接相关的疑难解答，请参阅[GitHub 企业服务器连接的 webhook VPC 终端节点 (PrivateLink) 疑难解答](#troubleshooting-connections-host-vpc-webhook)。

在本示例中，您将使用以下过程来配置将安装 GitHub 企业服务器实例的 VPC 和服务器：

1. 创建 VPC。有关更多信息，请参阅 [https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#Create-VPC](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#Create-VPC)。

1. 在您的 VPC 中创建子网。有关更多信息，请参阅 [https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#AddaSubnet](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#AddaSubnet)。

1. 将实例启动到 VPC 中。有关更多信息，请参阅 [https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#VPC_Launch_Instance](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#VPC_Launch_Instance)。

**注意**  
每个 VPC 一次只能与一台主机（GitHub 企业服务器实例）关联。

下图显示了使用 GitHub 企业 AMI 启动的 EC2 实例。

![\[显示实例描述的控制台屏幕截图\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/instance-vpc.png)


当您使用 VPC 进行 GitHub 企业服务器连接时，在设置主机时必须为基础设施提供以下内容：
+ **VPC ID：**安装 GitHub企业服务器实例的服务器的 VPC 或可以通过 VPN 或 Direct Connect 访问已安装的 GitHub企业服务器实例的 VPC。
+ **子网 ID 或 IDs：**安装 GitHub 企业服务器实例的服务器的子网，或者可以通过 VPN 或 Direct Connect 访问已安装的 GitHub 企业服务器实例的子网。
+ 一个@@ **或多个安全组：**安装 GitHub 企业服务器实例的服务器的安全组，或者可以通过 VPN 或 Direct Connect 访问已安装的 GitHub 企业服务器实例的安全组。
+ **终端节点：**准备好您的服务器终端节点，并继续下一步。

有关使用 VPCs 和子网的更多信息，请参阅 *Amazon VPC 用户指南 IPv4中的 VPC* [和子网大小](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html#vpc-sizing-ipv4)。

**Topics**
+ [我无法获取处于待处理状态的主机](#troubleshooting-connections-host-vpc-failed)
+ [我无法获取处于可用状态的主机](#troubleshooting-connections-host-vpc-app)
+ [我 connection/host 当时在工作，现在已经停止工作了](#troubleshooting-connections-host-vpc-stopped)
+ [我无法删除我的网络接口](#troubleshooting-connections-host-vpc-delete)

### 我无法获取处于待处理状态的主机
<a name="troubleshooting-connections-host-vpc-failed"></a>

如果您的主机进入 VPC\$1CONFIG\$1FAILED\$1INITIALIZATION 状态，这很可能是因为您为主机选择的 VPC、子网或安全组存在问题。
+ VPC、子网和安全组必须全部属于创建主机的账户。
+ 子网和安全组必须属于所选 VPC。
+ 每个提供的子网必须位于不同的可用区。
+ 创建主机的用户必须具有以下 IAM 权限：

  ```
  ec2:CreateNetworkInterface
  ec2:CreateTags
  ec2:DescribeDhcpOptionsec2:DescribeNetworkInterfaces
  ec2:DescribeSubnets
  ec2:DeleteNetworkInterface
  ec2:DescribeVpcs
  ec2:CreateVpcEndpoint
  ec2:DeleteVpcEndpoints
  ec2:DescribeVpcEndpoints
  ```

### 我无法获取处于可用状态的主机
<a name="troubleshooting-connections-host-vpc-app"></a>

如果您无法完成主机的 CodeConnections 应用程序设置，则可能是因为您的 VPC 配置或 GitHub 企业服务器实例存在问题。
+ 如果您未使用公共证书颁发机构，则需要向您的主机提供 GitHub 企业实例使用的 TLS 证书。TLS 证书值应该是证书的公有密钥。
+ 要创建 GitHub 应用程序，您需要是 GitHub 企业服务器实例的管理员。

### 我 connection/host 当时在工作，现在已经停止工作了
<a name="troubleshooting-connections-host-vpc-stopped"></a>

如果 a connection/host 以前运行但现在无法运行，则可能是由于您的 VPC 中的配置更改或 GitHub 应用程序已被修改所致。请检查以下事项：
+ 连接到您为连接创建的主机资源的安全组现已更改或无法再访问 GitHub 企业服务器。 CodeConnections 需要一个可以连接到 GitHub 企业服务器实例的安全组。
+ DNS 服务器 IP 最近发生了更改。您可以通过检查连接到您为连接创建的主机资源中指定的 VPC 的 DHCP 选项来验证这一点。请注意，如果您最近从 AmazonProvided DNS 迁移到自定义 DNS 服务器或开始使用新的自定义 DNS 服务器，则 host/connection 会停止运行。为了解决这个问题，请删除您现有的主机并重新创建它，这将在我们的数据库中存储最新的 DNS 设置。
+ 网络 ACLs 设置已更改，不再允许 HTTP 连接到您的 GitHub 企业服务器基础架构所在的子网。
+  GitHub 企业服务器上该 CodeConnections 应用程序的所有配置均已更改。对任何配置（例如 URLs 或应用程序密钥）的修改都可能导致已安装的 En GitHub terprise Server 实例与之间的连接中断 CodeConnections。

### 我无法删除我的网络接口
<a name="troubleshooting-connections-host-vpc-delete"></a>

如果无法检测到网络接口，请确认以下内容：
+  CodeConnections 只能通过删除主机来删除由创建的网络接口。用户不能手动删除它们。
+ 您必须拥有以下权限：

  ```
  ec2:DescribeNetworkInterfaces
  ec2:DeleteNetworkInterface
  ```

## GitHub 企业服务器连接的 webhook VPC 终端节点 (PrivateLink) 疑难解答
<a name="troubleshooting-connections-host-vpc-webhook"></a>

当您创建具有 VPC 配置的主机时，会为您创建 Webhook VPC 终端节点。

**注意**  
使用此部分对配置为使用 VPC 的 webhook 终端节点的连接进行故障排除 (PrivateLink)。有关与 Amazon VPC 中的 GitHub 企业服务器主机配置相关的疑难解答，请参阅[对主机的 VPC 配置进行故障排查](#troubleshooting-connections-host-vpc)。

当您创建与已安装提供商的连接时，您已指定您的服务器配置在 VPC 内，然后 AWS CodeConnections 创建您的主机，并为您创建 Webhook 的 VPC 终端节点 (PrivateLink)。这使主机能够通过 Webhook 通过 Amazon 网络将事件数据发送到您的集成 AWS 服务。有关更多信息，请参阅 [AWS CodeConnections 和接口 VPC 终端节点 (AWS PrivateLink)](vpc-interface-endpoints.md)。

**Topics**
+ [我无法删除我的 Webhook VPC 终端节点](#troubleshooting-connections-host-vpc-webhook-delete)

### 我无法删除我的 Webhook VPC 终端节点
<a name="troubleshooting-connections-host-vpc-webhook-delete"></a>

AWS CodeConnections 管理主机的 webhook VPC 终端节点的生命周期。要删除终端节点，您必须删除相应的主机资源。
+ 创建的 webhook VPC 终端节点 (PrivateLink) CodeConnections 只能通过[删除](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-delete.html)主机来删除。无法手动删除它们。
+ 您必须拥有以下权限：

  ```
  ec2:DescribeNetworkInterfaces
  ec2:DeleteNetworkInterface
  ```

## 对 2020 年 11 月 24 日之前创建的主机进行故障排查
<a name="troubleshooting-connections-host-vpc-webhook-host"></a>

自 2020 年 11 月 24 日起，在 AWS CodeConnections 设置主机时，将为您设置额外的 VPC 终端节点 (PrivateLink) 支持。对于在此更新之前创建的主机，请使用此故障排查内容。

有关更多信息，请参阅 [AWS CodeConnections 和接口 VPC 终端节点 (AWS PrivateLink)](vpc-interface-endpoints.md)。

**Topics**
+ [我有一台在 2020 年 11 月 24 日之前创建的主机，我想将 VPC 终端节点 (PrivateLink) 用于 webhook](#troubleshooting-connections-host-vpc-webhook-create)
+ [我无法获取处于可用状态的主机（VPC 错误）](#troubleshooting-connections-host-vpc-error-pre-webhook)

### 我有一台在 2020 年 11 月 24 日之前创建的主机，我想将 VPC 终端节点 (PrivateLink) 用于 webhook
<a name="troubleshooting-connections-host-vpc-webhook-create"></a>

在为 GitHub 企业服务器设置主机时，将为您创建 webhook 端点。连接现在使用 VPC PrivateLink Webhook 终端节点。如果您在 2020 年 11 月 24 日之前创建了主机，并且想要使用 VPC PrivateLink Webhook 终端节点，则必须先[删除](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-delete.html)主机，然后再[创建](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-create.html)新主机。

### 我无法获取处于可用状态的主机（VPC 错误）
<a name="troubleshooting-connections-host-vpc-error-pre-webhook"></a>

如果您的主机是在 2020 年 11 月 24 日之前创建的，并且您无法完成主机的 CodeConnections 应用程序设置，则可能是因为您的 VPC 配置或 GitHub 企业服务器实例存在问题。

您的 VPC 需要一个 NAT 网关（或出站互联网接入），这样您的 GitHub企业服务器实例才能为 GitHub Webhook 发送出口网络流量。

## 无法为 GitHub 存储库创建连接
<a name="troubleshooting-connections-GitHub-admin"></a>

**问题：**

由于与 GitHub 存储库的连接使用 AWS 连接器 GitHub，因此您需要组织所有者权限或仓库管理员权限才能创建连接。

**可能的修复方法：**有关 GitHub 存储库权限级别的信息，请参阅 [https://docs.github.com/en/free-pro-team@ latest/github/setting-up-and-managing-organizations-and-teams/permission-levels-for-an-organization](https://docs.github.com/en/free-pro-team@latest/github/setting-up-and-managing-organizations-and-teams/permission-levels-for-an-organization)。

## 编辑您的 GitHub 企业服务器连接应用程序权限
<a name="troubleshooting-GHES-app-permissions"></a>

如果您在 2020 年 12 月 23 日当天或之前安装了适用于 GitHub 企业服务器的应用程序，则可能需要向组织成员授予该应用程序只读访问权限。如果您是 GitHub 应用程序所有者，请按照以下步骤编辑创建主机时安装的应用程序的权限。

**注意**  
您必须在 E GitHub nterprise Server 实例上完成这些步骤，并且必须是 GitHub 应用程序所有者。

1. 在 E GitHub nterprise Server 中，从个人资料照片的下拉选项中选择 “**设置”**。

1. 选择 “**开发者设置”**，然后选择 “**GitHub应用程序**”。

1. 在应用程序列表中，为您的连接选择应用程序的名称，然后在设置显示中选择 **Permissions and events (权限和事件)**。

1. 在 **Organization permissions**（组织权限）下，对于 **Members**（成员），从 **Access**（访问权限）下拉列表中选择 **Read-only**（只读）。  
![\[Organization permissions interface showing Members access set to Read-only from dropdown menu.\]](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/ghes-app-permissions.png)

1. 在 **Add a note to users (向用户添加注释)** 下，添加更新原因的说明。选择**保存更改**。

## 连接时出现连接错误 GitHub：“出现问题，请确保您的浏览器已启用 Cookie” 或 “组织所有者必须安装 GitHub 应用程序”
<a name="troubleshooting-GitHub-organization-owner"></a>

**问题：**

要为 GitHub 存储库创建连接，您必须是 GitHub 组织所有者。对于不属于组织的存储库，您必须是存储库拥有者。当连接由非组织拥有者的其他用户创建时，将针对组织拥有者创建请求，并显示以下错误之一：

出现问题，请确保在浏览器中启用 Cookie

或

组织所有者必须安装该 GitHub 应用程序

**可能的修复方法：**对于 GitHub组织中的仓库，组织所有者必须创建与 GitHub 存储库的连接。对于不属于组织的存储库，您必须是存储库拥有者。

## 可能需要针对 IAM 策略更新资源中的连接服务前缀
<a name="troubleshoot-service-prefix"></a>

2024 年 3 月 29 日，该服务从 C AWS CodeStar onnections 更名为。 AWS CodeConnections从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。使用控制台创建的资源的服务前缀是`codeconnections`。在 SDK/CLI 资源 ARN `codeconnections` 中创建新资源。创建的资源将自动使用新的服务前缀。

以下是在中创建的资源 AWS CodeConnections：
+ Connections
+ 主机

**问题：**

在 ARN `codestar-connections` 中创建的资源不会自动重命名为资源 ARN 中的新服务前缀。创建新资源将创建具有连接服务前缀的资源。但是，带有`codestar-connections`服务前缀的 IAM 策略不适用于具有新服务前缀的资源。

**可能的修复方法：**要避免资源的访问或权限问题，请完成以下操作：
+ 为新的服务前缀更新 IAM 策略。否则，重命名或创建的资源将无法使用 IAM 策略。
+ 使用控制台或通过创建新服务前缀来更新资源CLI/CDK/CFN。

根据需要更新策略中的操作、资源和条件。在以下示例中，两个服务前缀的`Resource`字段均已更新。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "codeconnections:UseConnection"
        ],
        "Resource": [
            "arn:aws:codestar-connections:*:*:connection/*",
            "arn:aws:codeconnections:*:*:connection/*"
        ]
    }
}
```

------

## 由于使用控制台创建的资源中存在服务前缀，导致权限错误
<a name="troubleshoot-service-prefix-console-permissions"></a>

当前，使用控制台创建的连接资源将只有`codestar-connections`服务前缀。对于使用控制台创建的资源，策略声明操作必须包含`codestar-connections`作为服务前缀。

**注意**  
从 2024 年 7 月 1 日起，控制台将在资源 ARN `codeconnections` 中创建与的连接。带有两个服务前缀的资源将继续显示在控制台中。

**问题：**

使用控制台创建连接资源时，策略中必须使用`codestar-connections`服务前缀。使用策略中带有`codeconnections`服务前缀的策略时，使用控制台创建的连接资源会收到以下错误消息：

```
User: user_ARN is not authorized to perform: codestar-connections:action on resource: resource_ARN because no identity-based policy allows the codestar-connections:action action
```

**可能的修复方法：**对于使用控制台创建的资源，策略声明操作必须包含`codestar-connections`作为服务前缀，如中的策略示例所示[示例：使用控制台创建 AWS CodeConnections 的策略](security_iam_id-based-policy-examples-connections.md#security_iam_id-based-policy-examples-connections-console)。

## 已安装的提供商支持组织的连接和主机设置
<a name="troubleshooting-organization-host"></a>

对于已安装的支持组织的提供程序（例如 Organi GitHub zations），您不会传递可用的主机。您可以为组织中的每个连接创建一个新主机，并确保在以下网络字段中输入相同的信息：
+ ** - VPC ID**
+ **子网 ID**
+ **安全组 IDs**

要创建 [GHES 连接或[GitLab 自管理](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create-gitlab-managed.html)连接](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create-gheserver.html)，请参阅相关步骤。

## 我想提高连接的限制
<a name="troubleshooting-connections-limit-increase"></a>

您可以在中申请提高某些限额的限额 CodeConnections。有关更多信息，请参阅 [连接的配额](limits-connections.md)。

# 连接的配额
<a name="limits-connections"></a>

下表列出了开发工具控制台中连接的配额（也称为*限制*)。

此表中的配额按规定适用， AWS 区域 并且可以增加。有关 AWS 区域 和可以更改的限额的信息，请参阅 [AWS service quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)。

**注意**  
您必须 AWS 区域 先启用欧洲（米兰），然后才能使用它。有关更多信息，请参阅[启用区域](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable)。


| 资源 | 默认限制 | 
| --- | --- | 
|  每台的最大连接数 AWS 账户  |  250  | 

此表中的配额是固定的，不能更改。


| 资源 | 默认限制 | 
| --- | --- | 
|  连接名称中的最大字符数  | 32 个字符 | 
|  每台主机的最大数量 AWS 账户  | 50 | 
| 最大存储库链接数 | 100 | 
|  CloudFormation 堆栈同步配置的最大数量 | 100 | 
| 每个存储库链接的最大同步配置数 | 100 | 
| 每个分支的最大同步配置数 | 50 | 

# 要添加到允许列表的 IP 地址
<a name="connections-ip-address"></a>

如果您实施 IP 筛选或允许在 Amazon EC2 实例上使用某些 IP 地址，请将以下 IP 地址添加到您的允许列表中。这样做可以实现与提供商（例如 GitHub 和 Bitbucket）的连接。

下表按 AWS 区域列出了开发人员工具控制台中连接的 IP 地址。

**注意**  
对于欧洲地区（米兰）区域，必须先启用此区域，然后才能使用它。有关更多信息，请参阅[启用区域](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable)。


| 区域 | IP 地址 | 
| --- | --- | 
|  美国西部（俄勒冈州）(us-west-2)  |  35.160.210.199、54.71.206.108、54.71.36.205  | 
| 美国东部（弗吉尼亚州北部）(us-east-1) |  3.216.216.90、3.216.243.220、3.217.241.85  | 
| 欧洲地区（爱尔兰）(eu-west-1) |  34.242.64.82、52.18.37.201、54.77.75.62  | 
| 美国东部（俄亥俄州）(us-east-2)  |  18.217.188.190、18.218.158.91、18.220.4.80  | 
| 亚太地区（新加坡）(ap-southeast-1)  |  18.138.171.151、18.139.22.70、3.1.157.176  | 
| 亚太地区（悉尼）(ap-southeast-2)  |  13.236.59.253、52.64.166.86、54.206.1.112  | 
| 亚太地区（东京）(ap-northeast-1)  |  52.196.132.231、54.95.133.227、18.181.13.91  | 
| 欧洲地区（法兰克福）(eu-central-1)  |  18.196.145.164、3.121.252.59、52.59.104.195  | 
| 亚太地区（首尔）(ap-northeast-2)  |  13.125.8.239、13.209.223.177、3.37.200.23  | 
| 亚太地区（孟买）(ap-south-1)  |  13.234.199.152、13.235.29.220、35.154.230.124  | 
| 南美洲（圣保罗）（sa-east-1）  |  18.229.77.26、54.233.226.52、54.233.207.69  | 
| 加拿大（中部）(ca-central-1)  |  15.222.219.210、35.182.166.138、99.79.111.198  | 
| 欧洲（伦敦）(eu-west-2)  |  3.9.97.205、35.177.150.185、35.177.200.225  | 
| 美国西部（北加利福尼亚）(us-west-1)  |  52.52.16.175、52.8.63.87  | 
| 欧洲地区（巴黎）（eu-west-3）  |  35.181.127.138、35.181.145.22、35.181.20.200  | 
| 欧洲地区（斯德哥尔摩）(eu-north-1) |  13.48.66.148、13.48.8.79、13.53.78.182  | 
| 欧洲（米兰）(eu-south-1) |  18.102.28.105、18.102.35.130、18.102.8.116  | 
| AWS GovCloud （美国东部） | 18.252.168.157、18.252.207.77、18.253.185.119 | 