我正在致力于自动化 Azure Active Directory 应用程序注册和 Azure Devops 服务连接,但已经碰壁了。
我想通过服务主体 ID(或至少获取 ID)查询 Azure DevOps 服务连接(服务端点)。这在使用 Azure CLI 时是可能的:
az devops service-endpoint list --query "[?authorization.parameters.serviceprincipalid=='xxx']"
但由于我在 Azure 自动化帐户中将其作为 Powershell Runbook 运行,因此不支持 Azure CLI。
然后我尝试了 Azure DevOps REST API,并从 powershell 调用它,但响应不包含服务主体 ID,而只是这个:
authorization : @{parameters=; scheme=ServicePrincipal}
有谁知道如何解决这个问题?
更新
我这样调用其余的 API:
$uriAccount = $UriOrg + "_apis/serviceendpoint/endpoints?endpointNames={name}&api-version=6.1-preview.4"
$result = Invoke-RestMethod -Uri $uriAccount -Method get -Headers $AzureDevOpsAuthenicationHeader
$result.value 给了我这个:
authorization : @{parameters=; scheme=ServicePrincipal}