管理服务连接

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

注意

在 Microsoft Team Foundation Server (TFS) 2018 和更低版本中,生成和发布管道被称为“定义”,运行被称为“生成”,服务连接被称为“服务终结点”,阶段被称为“环境”,而作业被称为“阶段” 。

可以创建从 Azure Pipelines 到外部和远程服务的连接,以便在作业中执行任务。 建立连接后,可以查看、编辑服务连接以及向服务连接添加安全性。

例如,你可能想要连接到以下类别之一及其服务。

  • Microsoft Azure 订阅:使用 Microsoft Azure 订阅创建服务连接,并在发布管道中的 Azure 网站部署任务中使用服务连接的名称。
  • 不同的生成服务器或文件服务器:创建与 GitHub 存储库的标准 GitHub Enterprise Server 服务连接。
  • 联机持续集成环境:为 Git 存储库的持续集成创建 Jenkins 服务连接。
  • 远程计算机上安装的服务:使用托管服务标识创建与 VM 的 Azure 资源管理器 服务连接。

提示

Azure 资源管理器 服务连接是服务连接的一个示例。 有关详细信息,请参阅 常见服务连接类型

先决条件

可以根据分配的用户角色创建、查看、使用和管理服务连接。 有关详细信息,请参阅 用户权限

创建服务连接

完成以下步骤,为 Azure Pipelines 创建服务连接。

  1. 登录到你的组织 (https://dev.azure.com/{yourorganization}) 并选择你的项目。

  2. 依次选择“项目设置”、“服务连接”。

  3. 选择“ + 新建服务连接”,选择所需的服务连接类型,然后选择“ 下一步”。

  4. 选择身份验证方法,然后选择“ 下一步”。

  5. 输入服务连接的参数。 各个类型的服务连接的参数列表有所不同。 有关详细信息,请参阅服务连接类型和相关参数列表

  6. 选择“保存”,创建连接。

    Azure 资源管理器“连接”对话框

  7. 创建连接并输入参数后,验证该连接。 验证链接使用输入的信息对外部服务进行 REST 调用,并指示调用是否成功。

  1. 在 Team Foundation Server (TFS) 中,从顶部菜单栏中的“设置”图标打开 “服务 ”页。

  2. 选择“ + 新建服务连接 ”,然后选择所需的服务连接类型。

  3. 输入服务连接的参数。 各个类型的服务连接的参数列表有所不同。 有关详细信息,请参阅 服务连接类型列表

  4. 单击“确定”以创建连接。

    Azure 资源管理器“连接”对话框

  5. 创建连接并输入参数后,验证该连接。 验证链接使用输入的信息对外部服务进行 REST 调用,并指示调用是否成功。

注意

对于各种类型的服务连接,新的服务连接窗口可能显示不同,并且具有不同的参数。 有关每种 服务连接类型,请参阅常见服务连接类型 中的参数列表。

编辑服务连接

完成以下步骤以编辑服务连接。

  1. 登录到你的组织 (https://dev.azure.com/{yourorganization}) 并选择你的项目。

  2. 依次选择“项目设置”、“服务连接”。

  3. 选择要编辑的服务连接。

  4. 请参阅服务连接的“概述”选项卡,可在其中查看服务连接的详细信息。 例如,可以看到类型、创建者和身份验证类型等详细信息。 例如,令牌、用户名/密码或 OAuth 等。

    Azure 资源管理器连接概述

  5. 在“概述”选项卡旁边,可以看到“使用情况历史记录”,其中显示了正在使用服务连接的管道列表。

    Azure 资源管理器“使用情况历史记录”

  6. 若要更新服务连接,请选择“编辑”。 “审批和检查”、“安全”和“删除”是右上角“更多选项”的一部分。

    Azure 资源管理器“更多选项”

  1. 在 TFS 中,通过顶部菜单栏中的“设置”图标打开“服务”页。

  2. 依次选择“项目设置”、“服务连接”。

  3. 选择要编辑的服务连接。

  4. 请参阅服务连接的“概述”选项卡,可在其中查看服务连接的详细信息。 例如,可以看到类型、创建者和身份验证类型等详细信息。 例如,令牌、用户名/密码或 OAuth 等。

    Azure 资源管理器连接概述

  5. 在“概述”选项卡旁边,可以看到“使用情况历史记录”,其中显示了正在使用服务连接的管道列表。

    Azure 资源管理器“使用情况历史记录”

  6. 若要更新服务连接,请选择“编辑”。 “审批和检查”、“安全”和“删除”是右上角“更多选项”的一部分。

    Azure 资源管理器“更多选项”

保护服务连接

完成以下步骤以管理服务连接的安全性。

  1. 登录到你的组织 (https://dev.azure.com/{yourorganization}) 并选择你的项目。

  2. 依次选择“项目设置”、“服务连接”。

  3. 突出显示要编辑的服务连接。

  4. 转到右上角的“更多选项”,然后选择“ 安全性”。

    服务连接中心安全性

  1. 在 TFS 中,通过顶部菜单栏中的“设置”图标打开“服务”页。

  2. 若要在中心级别管理用户权限,请转到右上角的更多选项,然后选择 “安全性”。

    服务连接中心安全性

  3. 若要管理服务连接的安全性,请打开服务连接,转到右上角的更多选项,然后选择 “安全性”。

根据使用模式,服务连接安全性分为以下类别。 根据需要编辑权限。

用户权限

控制谁可以使用用户角色创建、查看、使用和管理服务连接。 在 “项目设置>服务连接”中,可以设置继承的中心级权限。 还可以替代每个服务连接的角色。

服务连接上的角色 用途
创建者 此角色的成员可以在项目中创建服务连接。 默认情况下,参与者添加为成员
读者 此角色的成员可以查看服务连接。
用户 此角色的成员在创作生成或发布管道或授权 yaml 管道时可以使用服务连接。
管理员 此角色的成员可以使用服务连接,并管理项目服务连接的所有其他角色的成员身份。 默认情况下,将项目管理员添加为成员。

注意

以前,Endpoint Creator 和 Endpoint Administrator 组用于控制谁可以创建和管理服务连接。 我们已转到使用角色的纯 RBAC 模型。 为了在现有项目中实现向后兼容性,终结点管理员组现在是管理员角色,Endpoint Creator 组是创建者角色,这可确保现有服务连接的行为不会发生更改。

我们还介绍了 跨项目共享服务连接。 使用此功能后,服务连接现在将成为组织级对象,但默认情况下范围限定为当前项目。 在“用户权限”中,可以看到“项目”和“组织”级权限。 管理员角色的功能在两个权限级别之间拆分。

项目级别的权限

项目级权限是在项目范围内具有读者、用户、创建者和管理员角色的用户权限,如上所述。 你有继承,可以在中心级别和每个服务连接中设置角色。

项目级管理员可以执行以下任务:

  • 在项目级别管理其他用户和角色
  • 重命名服务连接并更新说明
  • 删除服务连接,这会将其从项目中删除

Azure 资源管理器项目安全性

创建服务连接的用户将自动添加到该服务连接的管理员角色。 如果启用继承,则会继承在中心级别分配管理员角色的用户和组。

组织级别权限

在组织级别设置的任何权限都会反映在共享服务连接的所有项目中。 组织级权限没有继承。

组织级别管理员可以执行以下管理任务:

  • 管理组织级用户
  • 编辑服务连接的所有字段
  • 与其他项目共享和取消共享服务连接

Azure 资源管理器组织安全性

创建服务连接的用户将自动添加为该服务连接的组织级管理员角色。 在所有现有服务连接中,连接管理员都成为组织级管理员。

管道权限

管道权限控制哪些 YAML 管道有权使用服务连接。 管道权限不限制从经典管道进行访问。

可从以下选项中进行选择:

  • 打开所有管道的访问权限,以使用服务连接安全选项卡中“ 管道权限 ”部分右上角的更多选项。

  • 锁定服务连接,仅允许选定的 YAML 管道使用服务连接。 如果任何其他 YAML 管道引用服务连接,则会引发授权请求,该请求必须由连接管理员批准。 这不会限制从经典管道进行访问。

Azure 资源管理器管道权限

项目权限 - 服务连接的跨项目共享

项目权限控制哪些项目可以使用服务连接。 默认情况下,服务连接不会与任何其他项目共享。

  • 只有 具有“用户”权限 的组织级别管理员可以与其他项目共享服务连接。
  • 与项目共享服务连接的用户至少应在目标项目中具有“创建服务连接”权限。
  • 与项目共享服务连接的用户将成为该服务连接的项目级管理员。 在目标项目中,项目级继承设置为 on
  • 服务连接名称随项目名称一起追加,可以在目标项目范围内重命名。
  • 组织级别管理员可以从任何共享项目取消共享服务连接。

Azure 资源管理器项目权限

注意

项目权限功能依赖于新的服务连接 UI。 启用此功能后,旧的服务连接 UI 将不再可用。

使用服务连接

创建服务连接后,请完成以下步骤以使用它。

  1. 将连接名称作为 azureSubscription (或等效的连接名称) 值复制到代码中。

如果使用 YAML。

  1. 使用以下方法之一授权服务连接:
  • 若要授权任何管道使用服务连接,请转到 Azure Pipelines,打开“设置”页,选择“服务连接”,然后启用设置 “允许所有管道使用此连接” 选项进行连接。

  • 若要为特定管道授权服务连接,请通过选择 “编辑 ”并手动将生成排队来打开管道。 你将看到资源授权错误和针对该错误的“授权资源”操作。 选择此操作,以将管道显式添加为服务连接的授权用户。

你也可以创建自己的自定义服务连接

注意

变量无法指定服务连接。

常见服务连接类型

默认情况下,Azure Pipelines 支持以下服务连接类型:

Azure 经典 | Azure Repos/TFS | Azure 资源管理器 | Azure 服务总线 | Bitbucket | Cargo | Chef | Docker 中心或其他 | Git | 通用 | GitHub | GitHub Enterprise Server | Jenkins | Kubernetes | Maven | npm | NuGet | Python 包下载 | Python 包上传 | Service Fabric | SSH | Subversion | Visual Studio App Center |

Azure 经典服务连接

使用以下参数使用 Azure 凭据或 Azure 管理证书定义和保护与 Microsoft Azure 订阅的连接。

如何实现创建新的服务连接?

参数 说明
[身份验证类型] 必需。 选择“ 凭据” 或“ 基于证书”。
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
环境 必需。 选择“Azure 云”、“Azure Stack”或定义订阅的预定义Azure 政府云之一。
订阅 ID 必需。 Azure 订阅的 GUID 类似标识符 (订阅名称) 。 可以从Azure 门户复制订阅 ID。
订阅名称 必需。 Microsoft Azure 订阅的名称。
用户名 凭据身份验证所必需的。 工作或学校帐户的用户名 (例如 @fabrikam.com)。 例如 @live ,Microsoft 帐户 (或 @hotmail) 不受支持。
密码 凭据身份验证所必需的。 上面指定的用户的密码。
管理证书 基于证书的身份验证是必需的。 从发布设置 XML 文件或Azure 门户复制管理证书密钥的值。

如果在 Azure 政府 Cloud 中定义了订阅,请确保应用程序在配置服务连接之前满足相关的合规性要求。

Azure Repos

使用以下参数定义和保护与另一个 Azure DevOps 组织的连接。

参数 说明
(身份验证) 选择“ 基本 ”或“ 基于令牌的 身份验证”。
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 这不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
连接 URL 必需。 TFS 或其他 Azure DevOps 组织的 URL。
用户名 基本身份验证所必需的。 要连接到服务的用户名。
密码 基本身份验证所必需的。 指定用户名的密码。
个人访问令牌 基于令牌的身份验证 (TFS 2017 及更新版需要,Azure Pipelines 仅) 。 用于向服务进行身份验证的令牌。 了解详细信息

使用 “验证连接” 链接验证连接信息。

有关详细信息,请参阅 使用 Azure DevOps 的个人访问令牌对访问进行身份验证

Azure 资源管理器服务连接

使用以下参数通过服务主体身份验证 (SPA) 或 Azure 托管服务标识来定义和保护与 Microsoft Azure 订阅的连接。 该对话框提供了两种主模式:

  • 自动订阅检测。 在此模式下,Azure Pipelines 会查询 Azure 中你有权访问的所有订阅和实例。 它们会使用你当前在 Azure Pipelines 中登录时使用的凭据(包括 Microsoft 帐户和学校或工作帐户)。

如果未找到要使用的订阅,请注销 Azure Pipelines,然后使用相应的帐户凭据重新登录。

  • 手动订阅管道。 在此模式下,必须指定要用于连接到 Azure 的服务主体。 服务主体指定通过连接可用的资源和访问级别。

如果需要使用与当前在 Azure Pipelines 中登录的凭据不同的凭据连接到 Azure 帐户,请使用此方法。 这是安全性和限制访问权限最大化的有效方法。 服务主体有效期为两年。

有关详细信息,请参阅 连接到 Microsoft Azure

注意

如果看不到任何 Azure 订阅或实例,或在验证连接时出现问题,请参阅排查 Azure 资源管理器服务连接问题

Azure 服务总线服务连接

使用以下参数定义和保护与Microsoft Azure 服务总线队列的连接。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 此名称不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
服务总线 ConnectionString Azure 服务总线 实例的 URL。 详细信息
服务总线队列名称 现有Azure 服务总线队列的名称。

Bitbucket 云服务连接

将 OAuth 与 “授予授权” 或用户名和密码与 基本身份验证 结合使用,以定义与 Bitbucket Cloud 的连接。 若要使管道正常工作,存储库访问必须保持活动状态。

授予授权

参数 说明
OAuth 配置 必需。 与 Bitbucket 的 OAuth 连接。

基本身份验证

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
用户名 必需。 要连接到服务的用户名。
密码 必需。 指定用户名的密码。

货运服务连接

使用以下参数定义和保护与 Cargo 项目存储库的连接。

参数 说明
身份验证方法 选择项目存储库的身份验证方法: 基本用户名/密码 (包括 Azure DevOps PAT) 授权值 (包括 crates.io 令牌)
存储库 URL 存储库的 URL。 对于 crates.io,请使用 https://crates.io
用户名 用于连接到终结点的用户名。 如果使用个人访问令牌或授权值身份验证方法,该值可以是任意值。
Password 用于连接到终结点的密码。 个人访问令牌适用于Azure DevOps Services组织。
服务连接名称 服务连接的名称
说明 服务连接的可选说明

Chef 服务连接

使用以下参数定义和保护与 Chef 自动化服务器的连接。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
服务器 URL 必需。 Chef 自动化服务器的 URL。
节点名称 (用户名) 必需。 要连接到的节点的名称。 通常,这是你的用户名。
客户端密钥 必需。 Chef .pem 文件中指定的键。

Docker 主机服务连接

使用以下参数定义和保护与 Docker 主机的连接。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
服务器 URL 必需。 Docker 主机的 URL。
CA 证书 必需。 用于向主机进行身份验证的受信任的证书颁发机构证书。
证书 必需。 用于向主机进行身份验证的客户端证书。
密钥 必需。 Docker key.pem 文件中指定的密钥。

有关保护与 Docker 主机的连接的详细信息,请参阅 保护 Docker 守护程序套接字

Docker 注册表服务连接

使用以下参数为Azure 容器注册表Docker Hub或其他项定义与容器注册表的连接。

Azure 容器注册表

参数 说明
连接名称 必需。 在任务输入中引用此服务连接时使用的名称。
Azure 订阅 必需。 包含要用于创建服务连接的容器注册表的 Azure 订阅。
Azure 容器注册表 必需。 用于创建服务连接的Azure 容器注册表。

Docker Hub或其他

参数 说明
连接名称 必需。 在任务输入中引用此服务连接时使用的名称。
Docker 注册表 必需。 Docker 注册表的 URL。
Docker ID 必需。 Docker 帐户用户的标识符。
密码 必需。 上面标识的帐户用户的密码。 (Docker Hub 需要 PAT 而不是 password。)
电子邮件 可选。 用于接收通知的电子邮件地址。

其他 Git 服务连接

使用以下参数定义和保护与外部 Git 存储库服务器的连接。 GitHubGitHub Enterprise Server 有特定的服务连接。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
服务器 URL 必需。 Git 存储库服务器的 URL。
尝试从 Azure Pipelines 访问此 Git 服务器 选中后,Azure Pipelines 会尝试在排队管道运行之前连接到存储库。 可以禁用此设置,以在使用不可公开访问的存储库时提高性能。 请注意,当其他 Git 存储库不可公开访问时,CI 触发器将不起作用。 只能启动手动或计划的管道运行。
用户名 必需。 用于连接到 Git 存储库服务器的用户名。
密码/令牌密钥 必需。 指定用户名的密码或访问令牌。

有关详细信息,请参阅 项目源

通用服务连接

使用以下参数定义和保护与任何泛型类型服务或应用程序的连接。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
服务器 URL 必需。 服务的 URL。
用户名 可选。 要连接到服务的用户名。
密码/令牌密钥 可选。 指定用户名的密码或访问令牌。

GitHub 服务连接

使用以下参数定义与 GitHub 存储库的连接。

提示

对于其他 Git 服务器GitHub Enterprise Server 连接,有一个特定的服务连接。

参数 说明
选择授权 必需。 授予授权个人访问令牌。 请参阅下面的注释。
标记 个人访问令牌授权所必需的。 请参阅下面的注释。
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。

注意

如果为“选择 授权 ”选项选择“ 授予授权 ”,对话框将显示一个“ 授权” 按钮,用于打开 GitHub 签名页。 如果选择“ 个人访问令牌”,请将其粘贴到“ 令牌 ”文本框中。 此对话框显示令牌的建议范围:repo、user、admin:repo_hook。 有关详细信息,请参阅创建供命令行使用的访问令牌。然后,完成以下步骤以在你的配置文件中注册 GitHub 帐户。

  1. 从 Azure Pipelines 页面标题右侧的帐户名打开 用户设置
  2. 选择 “个人访问令牌”。
  3. 选择“添加”,然后输入创建令牌所需的信息。

有关详细信息,请参阅 项目源 - 版本控制

GitHub Enterprise Server 服务连接

使用以下参数定义与 GitHub 存储库的连接。

提示

对于其他 Git 服务器标准 GitHub 服务连接,有一个特定的服务连接。

参数 说明
选择授权 必需。 个人访问令牌用户名和密码OAuth2。 请参阅下面的注释。
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 这不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
服务器 URL 必需。 服务的 URL。
接受不信任的 TLS/SSL 证书 设置此选项以允许客户端接受自签名证书,而不是在 TFS 服务角色或托管代理的计算机中安装证书。
标记 个人访问令牌授权所必需的。 请参阅下面的注释。
用户名 用户名和密码身份验证所必需的。 要连接到服务的用户名。
密码 用户名和密码身份验证所必需的。 指定用户名的密码。
OAuth 配置 OAuth2 授权所必需的。 在帐户中指定的 OAuth 配置。
GitHub Enterprise Server 配置 URL URL 是从 OAuth 配置中提取的。

注意

如果选择“ 个人访问令牌 (PAT) 则必须将 PAT 粘贴到” 令牌 “文本框中。 此对话框显示令牌的建议范围:repo、user、admin:repo_hook。 有关详细信息,请参阅创建供命令行使用的访问令牌。然后,完成以下步骤以在你的配置文件中注册 GitHub 帐户。

  1. 从 Azure Pipelines 页面标题右侧的帐户名打开 用户设置
  2. 选择 “个人访问令牌”。
  3. 选择“添加”,然后输入创建令牌所需的信息。

Jenkins 服务连接

使用以下参数定义与 Jenkins 服务的连接。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
服务器 URL 必需。 服务的 URL。
接受不信任的 TLS/SSL 证书 设置此选项以允许客户端接受自签名证书,而不是在 TFS 服务角色或托管代理的计算机中安装证书。
用户名 必需。 要连接到服务的用户名。
密码 必需。 指定用户名的密码。

有关详细信息,请参阅 Azure Pipelines 与 Jenkins 的集成Artifact 源 - Jenkins

Kubernetes 服务连接

定义与 Kubernetes 群集的连接时,请使用以下参数。 从以下服务连接选项进行选择:

  • Azure 订阅
  • 服务帐户
  • Kubeconfig

Azure 订阅选项

参数 说明
连接名称 必需。 在任务输入中引用此服务连接时使用的名称。
Azure 订阅 必需。 包含要用于创建服务连接的群集的 Azure 订阅。
群集 Azure Kubernetes 服务群集的名称。
命名空间 群集中的命名空间。

对于已启用 Azure RBAC 的群集,会在所选命名空间中创建 ServiceAccount 以及 RoleBinding 对象,以便创建的 ServiceAccount 只能在所选命名空间上执行操作。

对于已禁用 Azure RBAC 的群集,会在所选命名空间中创建 ServiceAccount,但创建的 ServiceAccount 具有跨命名空间) (群集范围的特权。

注意

此选项列出服务连接创建者有权跨 不同 Azure 租户访问的所有订阅。 如果看不到来自其他 Azure 租户的订阅,检查这些租户中的 Azure AD 权限。

服务帐户选项

参数 说明
连接名称 必需。 在任务输入中引用此服务连接时使用的名称。
服务器 URL 必需。 群集的 API 服务器 URL。
机密 与要用于部署的服务帐户关联的机密

使用以下命令提取服务器 URL。

kubectl config view --minify -o 'jsonpath={.clusters[0].cluster.server}'

使用以下命令序列提取连接群集并进行身份验证所需的 Secret 对象。

kubectl get serviceAccounts <service-account-name> -n <namespace> -o 'jsonpath={.secrets[*].name}'

在以下命令中,将 service-account-secret-name 替换为上一个命令的输出。

kubectl get secret <service-account-secret-name> -n <namespace> -o json

将 YAML 窗体中提取的 Secret 对象复制并粘贴到“机密”文本字段中。

注意

使用服务帐户选项时,请确保存在 RoleBinding,它用于将 editClusterRole 中的权限授予所需的服务帐户。 必须存在此项,Azure Pipelines 才能使用服务帐户在所选命名空间中创建对象。

Kubeconfig 选项

参数 说明
连接名称 必需。 在任务输入中引用此服务连接时使用的名称。
Kubeconfig 必需。 kubeconfig 文件的内容。
上下文 要用于标识群集的 kubeconfig 文件中的上下文。

Maven 服务连接

定义和保护与 Maven 存储库的连接时,请使用以下参数。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
注册表 URL 必需。 Maven 存储库的 URL。
注册表 ID 必需。 这是与 Maven 尝试连接到的存储库/镜像的 ID 元素匹配的服务器 ID。
用户名 当连接类型为“用户名和密码”时是必需的。 用于进行身份验证的用户名。
密码 当连接类型为“用户名和密码”时是必需的。 对应于用户名的密码。
个人访问令牌 当连接类型为“身份验证令牌”时是必需的。 用于向服务进行身份验证的令牌。 了解详细信息

npm 服务连接

定义和保护与 npm 服务器的连接时,请使用以下参数。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
注册表 URL 必需。 npm 服务器的 URL。
用户名 当连接类型为“用户名和密码”时是必需的。 用于进行身份验证的用户名。
密码 当连接类型为“用户名和密码”时是必需的。 对应于用户名的密码。
个人访问令牌 当连接类型为“外部 Azure Pipelines”时是必需的。 用于向服务进行身份验证的令牌。 了解详细信息

NuGet 服务连接

定义和保护与 NuGet 服务器的连接时,请使用以下参数。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
源 URL 必需。 NuGet 服务器的 URL。
ApiKey 当连接类型为 ApiKey 时是必需的。 身份验证密钥。
个人访问令牌 当连接类型为“外部 Azure Pipelines”时是必需的。 用于向服务进行身份验证的令牌。 了解详细信息
用户名 当连接类型为“基本身份验证”时是必需的。 用于进行身份验证的用户名。
密码 当连接类型为“基本身份验证”时是必需的。 对应于用户名的密码。

若要将 NuGet 配置为使用 Azure Artifacts 和其他 NuGet 存储库进行身份验证,请参阅 NuGet 身份验证

Python 包下载服务连接

定义和保护用于下载 Python 包的 Python 存储库的连接时,请使用以下参数。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
用于下载的 Python 存储库 URL 必需。 Python 存储库的 URL。
个人访问令牌 当连接类型为“身份验证令牌”时是必需的。 用于向服务进行身份验证的令牌。 了解详细信息
用户名 当连接类型为“用户名和密码”时是必需的。 用于进行身份验证的用户名。
密码 当连接类型为“用户名和密码”时是必需的。 对应于用户名的密码。

Python 包上传服务连接

定义和保护与 Python 存储库的连接以上传 Python 包时,请使用以下参数。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
用于上传的 Python 存储库 URL 必需。 Python 存储库的 URL。
EndpointName 必需。 用于孪生上传的唯一存储库名称。 不允许使用空格和特殊字符。
个人访问令牌 当连接类型为“身份验证令牌”时是必需的。 用于向服务进行身份验证的令牌。 了解详细信息
用户名 当连接类型为“用户名和密码”时是必需的。 用于进行身份验证的用户名。
密码 当连接类型为“用户名和密码”时是必需的。 对应于用户名的密码。

Service Fabric 服务连接

定义和保护与 Service Fabric 群集的连接时,请使用以下参数。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
群集终结点 必需。 群集的 TCP 终结点。
服务器证书指纹 当连接类型为 “基于证书”“Azure Active Directory”时是必需的。
客户端证书 当连接类型为“基于证书”时是必需的。
密码 当连接类型为“基于证书”时是必需的。 证书密码。
用户名 当连接类型为“Azure Active Directory”时是必需的。 用于进行身份验证的用户名。
密码 当连接类型为“Azure Active Directory”时是必需的。 对应于用户名的密码。
使用 Windows 安全性 当连接类型为 “其他”时是必需的。
群集 SPN 当连接类型为 “其他” 并使用 Windows 安全性时是必需的。

SSH 服务连接

使用安全外壳 (SSH) 定义和保护与远程主机的连接时,请使用以下参数。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
主机名 必需。 远程主机的名称或 IP 地址。
端口号 必需。 要连接到的远程主机的端口号。 默认值为端口 22。
用户名 必需。 连接到远程主机时要使用的用户名。
密码或通行短语 如果使用密钥对作为凭据,则为指定用户名的密码或通行短语。
私钥 如果使用此类型的身份验证,则为私钥文件的全部内容。

有关详细信息,请参阅 SSH 任务通过 SSH 复制文件

Subversion 服务连接

定义和保护与 Subversion 存储库的连接时,请使用以下参数。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
服务器存储库 URL 必需。 存储库的 URL。
接受不信任的 TLS/SSL 证书 设置此选项以允许客户端接受安装在代理计算机上的自签名证书 () 。
领域名称 可选。 如果在生成或发布管道中使用多个凭据,请使用此参数指定包含为服务连接指定的凭据的领域。
用户名 必需。 要连接到服务的用户名。
密码 必需。 指定用户名的密码。

Visual Studio App Center 服务连接

定义和保护与 Visual Studio App Center 的连接时,请使用以下参数。

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时使用的名称。 它不是 Azure 帐户或订阅的名称。 如果你正在使用 YAML,请在脚本中使用 azureSubscription 或等效的订阅名称值作为名称。
API 令牌 必需。 用于向服务进行身份验证的令牌。 有关详细信息,请参阅 API 文档

其他服务连接的扩展

其他服务连接类型和任务可以作为扩展安装。 请参阅通过扩展提供的以下服务连接示例:

参数 说明
连接名称 必需。 在任务属性中引用此服务连接时将使用的名称。
服务器 URL 必需。 Power Platform 实例的 URL。 示例:https://contoso.crm4.dynamics.com
租户 ID 必需。 租户 ID (在Azure 门户) 中也调用目录 ID 以进行身份验证。 https://aka.ms/buildtools-spn有关显示租户 ID 并配置应用程序 ID 和关联的客户端密码的脚本,请参阅 。 还必须在 CDS 中创建应用程序用户
应用程序 ID 必需。 Azure 应用程序要进行身份验证的 ID。
应用程序 ID 的客户端机密 必需。 与上述应用程序 ID 关联的服务主体的客户端机密,用于证明标识。

你也可以创建自己的自定义服务连接

帮助和支持