Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C或Powershell中创建个人访问令牌_Powershell_Azure Devops - Fatal编程技术网

在C或Powershell中创建个人访问令牌

在C或Powershell中创建个人访问令牌,powershell,azure-devops,Powershell,Azure Devops,您好,我正在与Azure Devops合作,我有一个使用部署组的CI/CD管道。创建我的部署组后,web UI生成了一个powershell脚本,您可以利用该脚本在要添加到部署组的任何节点上安装代理。我还单击了生成PAT令牌的复选框,该令牌可以作为代理安装的参数传入 我想在powershell脚本中自动化所有这些,在这种情况下,只需将Web UI生成的powershell CMD复制并粘贴到我自己的脚本中即可。问题是我在网上找不到任何关于在powershell中生成PAT令牌的信息 有人能告诉我

您好,我正在与Azure Devops合作,我有一个使用部署组的CI/CD管道。创建我的部署组后,web UI生成了一个powershell脚本,您可以利用该脚本在要添加到部署组的任何节点上安装代理。我还单击了生成PAT令牌的复选框,该令牌可以作为代理安装的参数传入

我想在powershell脚本中自动化所有这些,在这种情况下,只需将Web UI生成的powershell CMD复制并粘贴到我自己的脚本中即可。问题是我在网上找不到任何关于在powershell中生成PAT令牌的信息


有人能告诉我是否有可能以编程方式生成PAT令牌,然后我可以用它来安装代理?

这似乎不能以编程方式完成。有关详细信息,请参阅以下帖子:

还请注意


然而,PAT的创建只需要每30-365天进行一次。创建后,您应该能够将其安全地传递给PowerShell脚本。

以下代码可以帮助您解决此问题


这是访问令牌,不是PAT,但您可以使用此访问令牌访问所有API。

您尝试了什么?如果您提供了尝试此操作的示例,那就太好了。我相信您已经提供了一个Azure管理API的访问令牌示例,该API不提供对Azure DevOps API的访问。您能否分享一个完整的示例,以便您能够注册部署组代理?
$currentAzureContext = Get-AzureRmContext;
$azureRmProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile;
$profileClient = New-Object 
Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient($azureRmProfile);
$pat = $profileClient.AcquireAccessToken($currentAzureContext.Subscription.TenantId).AccessToken;
Write-Output $pat