Github 422 错误:“邀请者权限不足”

问题描述 投票:0回答:1

(将其写为问题和答案,因为我在调试此问题时在 Google 上找不到任何有用的信息,并希望为下一个人解决“零谷歌点击”问题。)

我正在为一位客户工作,他使用 TerraformConcourse 来管理 Github 团队成员资格(以及存储库访问等)。

我们开始看到奇怪的错误(同时还有一些其他更改,这使得调试更加尴尬),这些错误在输出中显示为:

Error: PUT https://api.github.com/organizations/000000/team/000000/memberships/XXXXXX: 422 Validation Failed [{Resource:TeamMember Field:user Code:invalid Message:Inviter has insufficient permissions}]

其中

000000
表示组织和团队 ID,
XXXXXX
表示用户的用户名;请参阅 Octokit 文档中的添加或更新用户的团队成员资格。 (文档指出,我们使用的数字
team_id
是可以接受的,而不是字母数字
team_slug
。)

我认为这实际上是一个 JSON 响应:

{
  "Resource": "TeamMember",
  "Field": "user",
  "Code": "invalid",
  "Message": "Inviter has insufficient permissions"
}

在所有情况下,机器人用户及其 Concourse 用于进行这些 API 调用的个人访问令牌,绝对有权将用户添加到相关团队(并且已在同一运行中成功添加其他用户)。但我找不到任何关于“邀请者权限不足”实际含义的有用信息。

github permissions github-api http-status-code-422 github-organizations
1个回答
0
投票

在查看了用户是谁并与他们工作的团队核实后,这些用户已经离开了项目并被从组织中删除,但我们在他们的离职过程中被忽视了。

大概所讨论的“权限不足”是将它们重新添加到 Github 组织(我们不想这样做)。

解决这个问题的方法有2种:

  • 如果他们仍然需要访问我们的团队(和存储库),请找具有适当权限的人员来恢复用户的组织成员资格;或:
  • 如果不再需要他们的访问权限,请将他们从相关的 terraform 脚本中删除。

后者正是我们所需要的,并且使我们的管道再次变绿。

© www.soinside.com 2019 - 2024. All rights reserved.