如何在Powershell http post请求中将jenkins凭据参数作为身份验证标头传递

时间:2019-12-18 11:19:03

标签: powershell jenkins-pipeline jenkins-groovy jenkins-cli

我正在尝试使用powershell访问以下POST呼叫 致电http://pathandport//computer/agentname/api/json?pretty=true

我从jenkins调用了一个powershell文件,该文件使用从jenkins作为纯文本传递的用户名和密码来访问其余的api

$pair= "$($username):$($password)"
$encode= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($pair))
$Auth= "Basic $encode"
$Headers = @{ Authorization = $Auth }
$url = 'http://<path>:<port>//computer/agentname/api/json?pretty=true'
$response = Invoke-WebRequest -Uri $url -Headers $Headers

当我们以纯文本形式传递用户名和密码时,该方案可以正常工作。

最近开始了解jenkins凭证参数(带有密码的用户名),在该参数中获取用户名和密码,使用其内置逻辑将其编码为令牌,并生成类似于此“ 1234-abcd-5678-efgh”的值

我现在的问题是,在上述实现中,我无法在Powershell请求中将此令牌作为Auth值传递。

帮我解决这个问题

0 个答案:

没有答案