2

有了在构建期间获取 OAuth 令牌以访问 VSTS API 的新可能性,我尝试编写一个删除某些构建的脚本。

阅读构建工作正常,如下所示:

$headers = @{  Authorization = "Bearer $env:SYSTEM_ACCESSTOKEN"  }
$baseUrl = "{0}{1}" -f $env:SYSTEM_TEAMFOUNDATIONCOLLECTIONURI, $env:SYSTEM_TEAMPROJECTID
$buildsUrl = [string]::Format("{0}/_apis/build/builds?api-version=2.0", $baseUrl)
$response = Invoke-WebRequest -Uri $buildsUrl -Headers $headers

但是在尝试删除构建时,我收到403 Forbidden错误:

$deleteUrl = [string]::Format("{0}/_apis/build/builds/{1}?api-version=2.0", $baseUrl, $id)
$response = Invoke-WebRequest -Uri $url -Headers $headers -Method Delete

使用 VSTS 提供给构建的 OAuth 令牌是不可能删除的,还是我需要以不同的方式调用删除请求?

4

1 回答 1

4

它看起来像一个安全问题。构建服务账号默认没有“删除构建”权限。将权限设置为“允许”,然后重试。 在此处输入图像描述 在此处输入图像描述

于 2016-04-12T07:18:40.307 回答