Azure 资源管理器服务连接特殊案例
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
虽然 Azure 资源管理器服务连接的建议选项是将将工作负荷联合身份验证与应用注册或托管标识配合使用,但有时可能需要改用代理分配的托管标识或发布配置文件。 在本文中,你将了解如何创建连接到 Azure 虚拟机上的自托管代理的 Azure 资源管理器服务连接,以及如何使用发布配置文件创建与 Azure 应用程序服务应用的服务连接。
你还可以使用 Azure 资源管理器连接到 Azure 政府云和 Azure Stack。
创建与使用托管标识的 VM 的 Azure 资源管理器服务连接
注意
若要使用托管标识进行身份验证,必须在 Azure 虚拟机 (VM) 上使用自托管代理。
你可以将 Azure VM 上的自托管代理配置为使用 Microsoft Entra ID 中的 Azure 托管标识。 在此方案中,你可以使用代理分配的托管标识授予代理对任何支持 Microsoft Entra ID 的 Azure 资源(例如 Azure Key Vault 实例)的访问权限。
>在 Azure DevOps 项目中,转到“项目设置”“服务连接”。
有关详细信息,请参阅打开项目设置。
选择“新建服务连接”,然后选择“Azure 资源管理器”。
为标识类型选择托管标识(由代理分配)。
对于环境,请选择环境名称(Azure Cloud、Azure Stack 或政府云选项)。
选择范围级别。 选择订阅、管理组或机器学习工作区。 管理组是一些容器,可以帮助跨多个订阅管理访问权限、策略和符合性。 机器学习工作区用于创建机器学习项目。
对于订阅范围,请输入以下参数:
参数 说明 订阅 ID 必需。 输入 Azure 订阅 ID。 订阅名称 必需。 输入 Azure 订阅名称。 对于管理组范围,请输入以下参数:
参数 说明 管理组 ID 必需。 输入 Azure 管理组 ID。 管理组名称 必需。 输入 Azure 管理组名称。 对于机器学习工作区范围,请输入以下参数:
参数 说明 订阅 ID 必需。 输入 Azure 订阅 ID。 订阅名称 必需。 输入 Azure 订阅名称。 资源组 必需。 选择包含工作区的资源组。 ML 工作区名称 必需。 输入现有 Azure 机器学习工作区的名称。 ML 工作区位置 必需。 输入现有 Azure 机器学习工作区的位置。
输入租户 ID。
输入服务连接名称。
(可选)输入服务连接的说明。
选择授予对所有管道的访问权限,以允许所有管道使用此服务连接。 如果未选择此选项,则必须手动授予对使用此服务连接的每个管道的访问权限。
选择保存。
创建新服务连接后:
- 如果在 UI 中使用此服务连接,请选择在管道的“Azure 订阅”设置中分配的连接名称。
- 如果在 YAML 文件中使用服务连接,请将连接名称作为
azureSubscription
值复制到代码中。
确保 VM(代理)具有适当的权限。
例如,如果你的代码需要调用 Azure 资源管理器,请在 Microsoft Entra ID 中使用基于角色的访问控制 (RBAC) 为 VM 分配适当的角色。
有关详细信息,请参阅如何使用 Azure 资源的托管标识?和使用基于角色的访问控制来管理对 Azure 订阅资源的访问。
有关该过程的详细信息,请参阅排查 Azure 资源管理器服务连接问题。
使用发布配置文件创建 Azure 资源管理器服务连接
你可以使用发布配置文件创建服务连接。 你可以使用发布配置文件创建与 Azure 应用服务的服务连接。
>在 Azure DevOps 项目中,转到“项目设置”“服务连接”。
有关详细信息,请参阅打开项目设置。
依次选择新建服务连接、Azure 资源管理器、下一步。
为标识类型选择发布配置文件。
输入以下参数:
参数 说明 订阅 必需。 选择现有的 Azure 订阅。 如果未显示任何 Azure 订阅或实例,请参阅排查 Azure 资源管理器服务连接问题。 WebApp 必需。 输入 Azure 应用服务应用的名称。 服务连接名称 必需。 在任务属性中引用此服务连接时将使用的名称。 不是 Azure 订阅的名称。 描述 可选。 服务连接的说明。 选择授予对所有管道的访问权限,以允许所有管道使用此服务连接。 如果未选择此选项,则必须手动授予对使用此服务连接的每个管道的访问权限。
选择保存。
创建新服务连接后:
- 如果在 UI 中使用此服务连接,请选择在管道的“Azure 订阅”设置中分配的连接名称。
- 如果在 YAML 文件中使用服务连接,请复制连接名称并将其作为
azureSubscription
值粘贴到代码中。
连接到 Azure 政府云
有关连接到 Azure 政府云的信息,请参阅从 Azure Pipelines(Azure 政府云)进行连接。
连接到 Azure Stack
有关连接到 Azure Stack 的信息,请参阅以下文章:
有关详细信息,请参阅排查 Azure 资源管理器服务连接问题。
帮助和支持
- 浏览故障排除提示。
- 获取有关 Stack Overflow 的建议。
- 在 Azure DevOps 开发人员社区中发布问题、搜索答案或建议功能。
- 获取 Azure DevOps 支持。