使用 .NET Client for REST 按 ID 获取用户授权时访问被拒绝 API
Access Denied when GET User Entitlement by ID using .NET Client for REST API
我正在尝试使用 Azure DevOps 成员权利管理 REST API 使用 .NET 客户端通过 ID 获取用户。
我已经设置了个人访问令牌 (PAT),其中包括成员权利管理(读取)和权利(读取)等范围。
当我调用 Search endpoint I get a list of UserEntitlement
, but the GET endpoint 时抛出异常:
拒绝访问:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 需要对资源用户具有以下权限才能执行此操作:ReadExtended Users
我不知道这是什么意思...如何将“ReadExtended Users”添加到用户资源?我查看了 PAT 范围和用户权限,但找不到它。
为什么我可以列出所有用户,但不能通过 ID 获取单个用户??文档暗示两者需要相同的权限,并且返回的对象是相同类型 (UserEntitlement)。
这是一些代码:
var uri = new Uri("https://vssps.dev.azure.com/MY_ORGANIZATION");
var credentials = new VssBasicCredential("", "PAT");
using (var connection = new VssConnection(uri, credentials))
using (var client = connection.GetClient<MemberEntitlementManagementHttpClient>())
{
return client.GetUserEntitlementAsync(new Guid("USER_ID")).Result;
}
我正在使用客户端 API 的 v15.131.1、.NET Fx 4.5.2。是的,它有点过时,但它基于 Quickstart samples 并且目标项目是 .NET Fx。
Access Denied: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx needs the following permission(s) on the resource Users to perform this action: ReadExtended Users
我可以在 运行 用户权利 - 休息 API 时重现此问题。
要解决此问题,您需要在组织设置-> 权限 中将用户添加到项目集合管理员组。
那么你就可以运行 API 成功了。
我正在尝试使用 Azure DevOps 成员权利管理 REST API 使用 .NET 客户端通过 ID 获取用户。
我已经设置了个人访问令牌 (PAT),其中包括成员权利管理(读取)和权利(读取)等范围。
当我调用 Search endpoint I get a list of UserEntitlement
, but the GET endpoint 时抛出异常:
拒绝访问:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 需要对资源用户具有以下权限才能执行此操作:ReadExtended Users
我不知道这是什么意思...如何将“ReadExtended Users”添加到用户资源?我查看了 PAT 范围和用户权限,但找不到它。
为什么我可以列出所有用户,但不能通过 ID 获取单个用户??文档暗示两者需要相同的权限,并且返回的对象是相同类型 (UserEntitlement)。
这是一些代码:
var uri = new Uri("https://vssps.dev.azure.com/MY_ORGANIZATION");
var credentials = new VssBasicCredential("", "PAT");
using (var connection = new VssConnection(uri, credentials))
using (var client = connection.GetClient<MemberEntitlementManagementHttpClient>())
{
return client.GetUserEntitlementAsync(new Guid("USER_ID")).Result;
}
我正在使用客户端 API 的 v15.131.1、.NET Fx 4.5.2。是的,它有点过时,但它基于 Quickstart samples 并且目标项目是 .NET Fx。
Access Denied: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx needs the following permission(s) on the resource Users to perform this action: ReadExtended Users
我可以在 运行 用户权利 - 休息 API 时重现此问题。
要解决此问题,您需要在组织设置-> 权限 中将用户添加到项目集合管理员组。
那么你就可以运行 API 成功了。