运行 Invoke-RestMethod 所需的权限 运行 在 Azure DevOps 中发布

Permission required to run Invoke-RestMethod to run Release in Azure DevOps

我正在尝试 运行 一个在 Azure DevOps 发布管道中调用 Rest API 的 PowerShell 脚本。一些用户能够 运行 发布而没有任何错误,但对于一些用户,他们得到远程服务器返回错误:

(403) Forbidden. The authenticated user doesn't have permission to perform the operation.

需要什么样的许可?

用户是否需要"Administer process permissions"?

要运行 发布管道,用户需要创建发布 权限。默认情况下 Contributes 组具有这些权限。所以最好是将他们添加到这个组中。此外,您可以转到发布安全设置并明确向用户授予这些权限。

您可以找到更多信息 here

(403) Forbidden. The authenticated user doesn't have permission to perform the operation.

403是API响应码,可以看到,这些用户没有权限执行API成功。

正如403的定义,意思是对不起,我知道你是谁,我也知道你想做什么。但不幸的是,你没有权限做你想做的这个操作。所以它的权限设置取决于你试图执行的api。

默认情况下,如果某人没有在 Org setting/project 设置中分配足够的权限,即使它拥有 完全访问权限 的令牌,他或她仍然可以API 没有成功完成他没有权限做的事情。

what kind of permission is required? Does the user need "Administer process permissions"?

您不需要为他们分配管理员角色,尽管这必须可以解决所有权限问题。根据实际情况给这些用户分配相关权限即可api.

如果您不介意,最好分享您正在使用但面临 403 forbidden 错误的 api。