我在Azure Devops中有一个OAuth github服务连接。 我需要通过管道建立的OAuth连接来调用Github API。
有什么方法可以从管道中获得为此目的的令牌?
例如:
# How do I get the pipeline token so I can use it here.
$Token = $(MyToken)
$Headers = @{Headers = @{Authorization = "Basic $([System.Convert]::ToBase64String([char[]]$Token));'Accept' = 'application/vnd.github.v3+json'" } }
$res = Invoke-RestMethod -Uri 'https://api.github.com/rate_limit' @Headers
$res.resources
结帐流程显然使用基本令牌。 我该如何做而不创建任务。
git config gc.auto 0
git config --get-all http.https://github.com/MyOrg/MyRepoName.extraheader
git config http.version HTTP/1.1
git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules origin
如果我需要Azure Devops令牌,请按照this使用 System.AccessToken 变量。 我有点想要这个,但是有一个服务连接。 (理想情况下,它应与OAuth终结点一起使用,如下面的图片和Azure Pipelines应用程序集成所示)
答案 0 :(得分:0)
如果使用PowerShell,则可以使用VstsTaskSdk Module,然后使用Get-VstsEndpoint
方法。
例如:
$endpoint = Get-VstsEndpoint -Name $serviceName -Require
$token = $endpoint.Auth.Parameters.accessToken