使用PowerShell,我试图从groupType projectContributor中删除一个用户,这样我就可以将他转移到Project。我可以完成添加到项目团队,但我已经尝试了我可以删除这个用户的权利使用修补程序,但没有成功。为了避免评论,OrgUrl、projectId和userId正在被传递。
$b= @"
[
{
"op": "remove",
"path": "/projectEntitlements",
"value": {
"projectRef": {
"id": "$projectID"
},
"group": {
"groupType": "projectContributor"
}
}
}
]
"@
$uri = "$orgURL/_apis/userentitlements/$userId`?api-version=5.1-preview.2"
Invoke-RestMethod -Uri $uri -ContentType "application/json-patch+json" -Body $b -Method PATCH -Headers @{ Authorization = ("Basic {0}" -f $base64AuthInfo)}
我得到的错误是:
projectId","typeName":"System.ArgumentException, mscorlib","typeKey":"ArgumentException","errorCode":0,"eventId":0}
At line:20 char:1
+ Invoke-RestMethod -Uri $uri -ContentType "application/json-patch+json ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
如有任何帮助/例子,我们将不胜感激。我已经浏览了Azure DevOps API的所有API文档。
发布于 2020-05-05 23:31:35
请试试这个:
$b= @"
[
{
"op": "remove",
"path": "/projectEntitlements/$projectID",
"value": {
"projectRef": {
"id": "$projectID"
},
"group": {
"groupType": "projectContributor"
}
}
}
]
"@
由于您正在此路径下移除值,因此我不确定您是否需要值,因此这应该为您提供相同的值:
$b= @"
[
{
"op": "remove",
"path": "/projectEntitlements/$projectID",
"value": ""
}
]
"@
发布于 2020-05-06 04:58:15
我使用用户权限 rest获得了同样的错误。
它在将成员从组中移除 rest中对我起作用。
DELETE https://vsaex.dev.azure.com/{organization}/_apis/GroupEntitlements/{groupId}/members/{memberId}?api-version=5.1-preview.1
当用户作为项目贡献者添加到项目中时。此用户将被添加到此项目的组[ProjectName]\\Contributors
中。
然后可以使用组列表rest获取[ProjectName]\\Contributors
的组id。上面的{memberId}
Remove Member From Group
api是用户的userId
。然后只需调用上面的api就可以将用户从项目贡献者组中删除。
https://stackoverflow.com/questions/61623051
复制相似问题