2

我想创建一个 GitHub 应用程序来显示存储库中的当前问题,按标签组织。该组织下的存储库是私有的,但我的帐户具有管理员访问权限。我已经以我的名义安装了该应用程序。API list-issues-for-a-repository正在返回:

{
  "message": "Not Found",
  "documentation_url": "https://developer.github.com/v3/issues/#list-issues-for-a-repository"
}

我已将应用权限设置如下:

存储库权限

  • 问题 - 只读
  • 元数据 - 只读
  • 无法访问其他所有内容

组织权限

  • 所有人都无法访问

用户权限

  • 所有人都无法访问

订阅活动

  • 未选中所有

获取所有 repos 使用/orgs/«org»/repos返回一个空数组,这意味着私有存储库没有显示,因此这里也可能存在权限问题。

问题:

  1. 我需要在组织下安装应用程序吗?即使我们正在运行 Codacy 和 GitHub Desktop,该组织也没有显示任何已安装的应用程序。

  2. 该应用程序不在组织的第三方访问策略之下。我需要添加它吗?我没有看到任何请求权限的方法,我不知道 GitHub 应用程序是否以这种方式工作。

  3. 我是否需要为应用程序添加更多权限?我只需要只读的问题,不想暴露比我需要的更多。

4

1 回答 1

2

首先,确认它必须是“GitHub 应用程序”而不是“OAuth 应用程序”,因为根据文档,用于列出存储库中问题的 API 仅适用于 GitHub 应用程序。我最初选择了一个 OAuth 应用程序,但在以前相关问题的编辑历史记录中记录了一个错误的转折点,但一无所获。

至于我的具体问题:

  1. 我需要在组织下安装应用程序吗?即使我们正在运行 Codacy 和 GitHub Desktop,该组织也没有显示任何已安装的应用程序。

是的,需要在组织下安装或添加。我更容易删除我帐户下的现有应用程序,然后在组织下重新添加(而不是重新安装)。

  1. 该应用程序不在组织的第三方访问策略之下。我需要添加它吗?我没有看到任何请求权限的方法,我不知道 GitHub 应用程序是否以这种方式工作。

将应用程序添加到组织下后,它会自动获得访问权限。您可以微调它可以访问的存储库,或者让它访问所有存储库。安装,而不是添加,可能需要更多步骤,并且需要先发布应用程序。我的应用程序仅适用于组织,因此我选择了更简单的解决方案。此外,即使您授予应用程序访问所有存储库的权限,登录者的访问权限也优先。例如,组织外部的人不会看到任何私有存储库。

  1. 我是否需要为应用程序添加更多权限?我只需要只读的问题,不想暴露比我需要的更多。

不,只是只读问题,自动包含元数据。

通过这些修订,我能够访问存储库,并获得list-issues-for-a-repository.

于 2019-11-23T23:23:18.113 回答