Powershell 通过Azure DevOps API设置权限会引发错误请求(400)
我正在尝试编写一个脚本,以使用其API更改对Azure DevOps资源的权限 我得到的错误是错误的请求 我的凭据正在工作(我正在其他函数中使用它们来获取构建主体的所有参数) 也许是身体出了问题,我没看到 这是我的职责:Powershell 通过Azure DevOps API设置权限会引发错误请求(400),powershell,azure-devops,Powershell,Azure Devops,我正在尝试编写一个脚本,以使用其API更改对Azure DevOps资源的权限 我得到的错误是错误的请求 我的凭据正在工作(我正在其他函数中使用它们来获取构建主体的所有参数) 也许是身体出了问题,我没看到 这是我的职责: function Set-Permission { param( [Parameter(Position=0, Mandatory = $true, ValueFromPipeline = $true)] ` [string]$organ
function Set-Permission {
param(
[Parameter(Position=0, Mandatory = $true, ValueFromPipeline = $true)] `
[string]$organization,
[Parameter(Position=1, Mandatory = $true, ValueFromPipeline = $true)] `
[string]$namespaceId,
[Parameter(Position=2, Mandatory = $true, ValueFromPipeline = $true)] `
[string]$token,
[Parameter(Position=3, Mandatory = $true, ValueFromPipeline = $true)] `
[string]$groupDescriptor,
[Parameter(Position=4, Mandatory = $true, ValueFromPipeline = $true)] `
[int]$allowMask,
[Parameter(Position=5, Mandatory = $false, ValueFromPipeline = $true)] `
[int]$denyMask = 0
)
$body =
@"
{
"token": "$token",
"merge": true,
"accessControlEntries": [
{
"descriptor": "$groupDescriptor",
"allow": $allowMask,
"deny": $denyMask,
"extendedinfo": {}
}
]
}
"@
Post-RestAPICall -url $url -body $body
}
这些是我正在使用的示例URL和主体
网址
身体
Post RestAPICall函数只是这些调用的错误处理
有什么建议吗?找到了解决方案
标记使用常规斜杠(/)而不是反斜杠(\)
更改以使请求正常工作
干杯
https://dev.azure.com/myAccount/_apis/accesscontrolentries/2e9eb7ed-3c0a-47d4-87c1-0ffdd275fd87?api-version=5.0
" {
"token": "repoV2\827a6631-8685-4a0e-b53f-b54742e505fa",
"merge": true,
"accessControlEntries": [
{
"descriptor": "Microsoft.TeamFoundation.Identity;S-1-9-1551374245-828799618-2240155210-3040851271-1122305530-1-2397848184-1658408774-2559123938-1159016780",
"allow": 32,
"deny": 0,
"extendedinfo": {}
}
]
}"