管理服务连接

Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2015

备注

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

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

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

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

提示

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

先决条件

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

创建服务连接

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

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

  2. 选择 Project 设置"" > 服务连接"。

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

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

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

  6. 选择 " 保存 " 以创建连接。

    Azure 资源管理器连接对话框

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

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

  2. 选择 " + 新建服务连接 ",并选择所需的服务连接类型。

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

  4. 选择“确定”以创建连接。

    Azure 资源管理器连接对话框

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

备注

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

编辑服务连接

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

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

  2. 选择 Project 设置"" > 服务连接"。

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

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

    Azure 资源管理器连接概述

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

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

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

    Azure 资源管理器更多选项

  1. 在 TFS 中,从顶部菜单栏中的 "设置" 图标打开 " 服务 " 页。

  2. 选择 Project 设置"" > 服务连接"。

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

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

    Azure 资源管理器连接概述

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

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

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

    Azure 资源管理器更多选项

保护服务连接

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

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

  2. 选择 Project 设置"" > 服务连接"。

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

  4. 在右上角,单击 "更多选项",然后选择 " 安全性"。

    服务连接中心安全性

  1. 在 TFS 中,从顶部菜单栏中的 "设置" 图标打开 " 服务 " 页。

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

    服务连接中心安全性

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

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

用户权限

控制谁可以使用用户角色创建、查看、使用和管理服务连接。 在 Project 设置 > ""服务"" 连接 "中,可以设置被继承的中心级别权限。 你还可以为每个服务连接覆盖角色。

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

备注

以前,使用终结点创建者和终结点管理员组来控制谁可以创建和管理服务连接。 我们已移动到使用角色的纯 RBAC 模型。 为了在现有项目中实现向后兼容,终结点管理员组现在是管理员角色,终结点创建者组是创建者角色,它可确保现有服务连接的行为没有变化。

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

项目级别的权限

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

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

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

Azure 资源管理器项目安全性

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

组织级别权限

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

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

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

Azure 资源管理器组织安全性

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

管道权限

管道权限控制哪些 YAML 管道有权使用服务连接。

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

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

  • 锁定服务连接,并仅允许选定的 YAML 管道使用服务连接。 如果任何其他 YAML 管道引用服务连接,则会发出授权请求,该请求必须由连接管理员批准。

Azure 资源管理器管道权限

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

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

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

Azure 资源管理器项目权限

备注

项目权限功能依赖于新的服务连接用户界面。 启用此功能后,旧的服务连接用户界面将无法再使用。

使用服务连接

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

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

如果使用的是 YAML。

  1. 使用以下方法之一来授权服务连接:
  • 若要授权任何管道使用该服务连接,请参阅 "Azure Pipelines",打开 "设置" 页,选择 "服务连接",然后启用 "允许所有管道为该连接使用此连接" 选项。

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

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

备注

不能通过变量指定服务连接。

常见的服务连接类型

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

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

Azure 经典服务连接

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

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

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

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

Azure Repos

使用以下参数定义与另一 Azure DevOps 组织的连接并确保其安全。

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

使用 "验证连接 "链接验证连接信息。

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

Azure 资源管理器服务连接

使用以下参数定义和使用服务主体身份验证 Microsoft Azure SPA (或) 服务标识Azure-Managed订阅的连接。 该对话框提供两种主要模式:

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

如果看不到想要使用的订阅,请注销Azure Pipelines并使用相应的帐户凭据重新登录。

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

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

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

备注

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

Azure 服务总线 服务连接

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

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

Bitbucket 云服务连接

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

大授权

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

基本身份验证

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

Chef 服务连接

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

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

Docker 主机服务连接

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

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

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

Docker 注册表服务连接

使用以下参数定义到 Azure 容器注册表Docker 中心或其他容器的容器注册表的连接。

Azure 容器注册表

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

Docker 中心或其他

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

外部 Git 服务连接

使用以下参数定义与 Git 存储库服务器的连接并确保其安全。 GitHubGitHub Enterprise 服务器存在特定的服务连接。

参数 说明
连接名称 必需。 用于引用任务属性中的服务连接的名称。 它不是你的 Azure 帐户或订阅的名称。 如果使用的是 YAML,请在脚本中使用名称作为 get-azuresubscription 或等效的订阅名称值。
服务器 URL 必需。 Git 存储库服务器的 URL。
用户名 必需。 用于连接到 Git 存储库服务器的用户名。
密码/令牌密钥 必需。 指定的用户名的密码或访问令牌。

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

通用服务连接

使用以下参数定义与任何泛型类型的服务或应用程序的连接并确保其安全。

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

GitHub 服务连接

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

提示

外部 Git 服务器具有特定的服务连接,并GitHub Enterprise 服务器连接

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

备注

如果为 "选择授权"选项选择 "授权" ,则对话框将显示 "授权" 按钮,该按钮将打开 GitHub 登录页。 如果选择 " 个人访问令牌",请将其粘贴到 " 令牌 " 文本框中。 此对话框显示标记的建议范围:存储库 、用户、管理员: repo_hook。 有关详细信息,请参阅为命令行使用创建访问令牌,然后完成以下步骤,在配置文件中注册 GitHub 帐户。

  1. 在 Azure Pipelines 页面标题的右侧,从帐户名称打开你的个人资料。
  2. 在左列顶部的 " 详细信息" 下,选择 " 安全性"。
  3. 选择 " 个人访问令牌"。
  4. 选择 " 添加 ",然后输入创建令牌所需的信息。

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

GitHub Enterprise Server 服务连接

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

提示

外部 Git 服务器标准 GitHub 服务连接存在特定的服务连接。

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

备注

如果选择 " 个人访问令牌 " (pat) 则必须将 PAT 粘贴到 " 令牌 " 文本框中。 此对话框显示标记的建议范围:存储库 、用户、管理员: repo_hook。 有关详细信息,请参阅为命令行使用创建访问令牌,然后完成以下步骤,在配置文件中注册 GitHub 帐户。

  1. 在 Azure Pipelines 页面标题的右侧,从帐户名称打开你的个人资料。
  2. 在左列顶部的 " 详细信息" 下,选择 " 安全性"。
  3. 选择 " 个人访问令牌"。
  4. 选择 " 添加 ",然后输入创建令牌所需的信息。

Jenkins 服务连接

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

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

有关详细信息,请参阅Azure Pipelines 与 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,该角色将 中的权限授予 edit ClusterRole 所需的服务帐户。 需要这样做,以便服务帐户可用于Azure Pipelines命名空间中的对象。

Kubeconfig 选项

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

Maven 服务连接

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

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

Npm 服务连接

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

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

NuGet服务连接

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

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

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

Python 包下载服务连接

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

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

Python 包上传服务连接

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

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

Service Fabric 服务连接

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

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

SSH 服务连接

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

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

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

Subversion 服务连接

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

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

Visual StudioApp Center服务连接

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

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

其他服务连接的扩展

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

  • 用于 的 TFS Azure Pipelines。 通过 TFS 服务连接和 Team Build ( 外部) 项目使用 Azure Pipelines 部署本地 TFS 生成,即使无法直接从 Azure Pipelines 访问 TFS 计算机。 有关详细信息,请参阅外部 TFS 和此博客文章

  • 用于 的 TeamCity Azure Pipelines。 此扩展通过 TeamCity 服务连接提供与 TeamCity 的集成,使 TeamCity 中生成的项目能够使用 Azure Pipelines。 有关详细信息,请参阅 TeamCity

  • System Center Virtual Machine Manager (SCVMM) 集成。 连接 SCVMM 服务器预配虚拟机并针对它们执行操作,例如管理检查点、启动和停止虚拟机 (VM) ,以及运行 PowerShell 脚本。

  • VMware 资源部署。 连接从 VMware vCenter 服务器 或 TFS Visual Studio Team Services到要预配的项。 启动、停止或快照 VMware 虚拟机。

  • Power Platform Build Tools。 使用 Microsoft Power Platform Build Tools 自动执行与基于 Microsoft Power Platform 构建的应用相关的常见生成和部署Microsoft Power Platform。 安装扩展后,Power Platform 服务连接 类型具有以下属性。

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

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

帮助和支持