Azure devops 从Github服务连接获取OAuth令牌

Azure devops 从Github服务连接获取OAuth令牌,azure-devops,Azure Devops,我在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]::ToBase64Str

我在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令牌,我会使用System.AccessToken变量,如所示。 我有点想要这个,但是需要一个服务连接。 (根据下图和Azure Pipelines应用程序集成,理想情况下,这应该适用于OAuth端点)


如果使用PowerShell,则可以使用,然后使用
获取VstsEndpoint
方法

例如:

$endpoint = Get-VstsEndpoint -Name $serviceName -Require
$token = $endpoint.Auth.Parameters.accessToken

但这并不奏效。你真的在你的管道中使用这个吗?从此处的一条注释[()来看,似乎API端点可能仅通过API扩展而不是API托管代理可用。我安装/导入了模块,并根据我的服务端点的名称设置了
$ServiceName
变量(尝试了Oauth和Azure管道应用程序)它只是在
Get VsTsEndpoint
行上发出一个终止错误,没有错误消息。如果我在本地尝试(显然我不在代理中),Get-VSTSEndpoint以交互方式请求端点、凭据和数据。我怀疑服务连接不可用,相同的交互请求被发送到管道(因为不可用),这反过来会引发终止错误。@SagePourpre我在PS扩展中使用它,所以您可能是对的,它只能在那里使用:(