用于通过 Azure DevOps 进行身份验证的管道的新服务连接类型
Azure DevOps 中的管道任务使用作业访问令牌 来访问资源,可通过内置变量 System.AccessToken 获得。 例如,“签出”任务使用此令牌向存储库进行身份验证。 同样,PowerShell 脚本可以使用此令牌访问 Azure DevOps REST API。 但是,此令牌的权限基于项目生成服务标识,这意味着项目中的所有作业访问令牌都具有相同的权限。 这会授予项目内所有管道的过度访问权限。
若要解决此问题,将引入名为“Azure DevOps Service Connection”的新服务连接类型。 它使用一个 Azure 服务主体,可以在 Azure DevOps 中添加为具有特定权限的用户。 这样,就可以使用此服务连接向管道任务中的资源进行身份验证,并限制对特定管道的访问。
我们将首先介绍新的连接类型以及一些使用它的任务。 我们将随着时间的推移逐步扩展可以使用连接类型的任务列表。