Skip to main content

Enterprise Server 3.15 目前作为候选发布提供。

授权 OAuth 应用

您可以将 GitHub Enterprise Server 身份连接到使用 OAuth 的第三方应用程序。 在授权 OAuth app 时,应确保您信任应用程序,查阅开发者是谁,并查阅应用程序要访问的信息类型。

当 OAuth app 想要通过你在 GitHub 上的帐户识别你时,你会看到一个页面,其中包含该应用的开发者联系信息以及所请求的特定数据列表。

OAuth app 访问

OAuth apps 可以具有对 GitHub Enterprise Server 数据的读取或写入权限 。

  • 读取权限仅允许应用查看数据。
  • 写入权限允许应用更改数据。

提示:我们建议您定期审查您授权的集成。 删除在一段时间内未使用的任何应用程序和令牌。 有关详细信息,请参阅“审查授权的 OAuth 应用”。

关于 OAuth 范围

范围是 OAuth app 可以申请访问公共及非公共数据的权限组。

当您想使用集成了 GitHub Enterprise Server 的 OAuth app 时,该应用程序可让您了解需要的数据访问权限类型。 如果您授予应用程序访问权限,则应用程序将能代您执行操作,例如读取或修改数据。 例如,如果要使用请求 user:email 作用域的应用,该应用将具有对专用电子邮件地址的只读访问权限。 有关详细信息,请参阅“OAuth 应用的范围”。

注意:目前,无法将源代码访问范围限定为只读。

令牌具有与令牌所有者相同的访问资源和对这些资源执行操作的能力,并且还受到授予令牌的任何范围或权限的限制。 令牌无法向用户授予额外访问权限功能。例如,应用程序可以创建配置了 admin:org 作用域的访问令牌,但如果应用程序的用户不是组织所有者,则不会向应用程序授予对组织的管理访问权限。

每个用户/应用程序/作用域组合签发的令牌数量有限,速率限制是每小时创建十个令牌。 如果应用程序为同一用户和相同作用域创建超过十个令牌,则将撤销具有相同用户/应用程序/作用域组合的最旧令牌。 但是,达到每小时速率限制不会撤销最早的令牌。 相反,它会在浏览器中触发重新授权提示,要求用户仔细检查他们向你的应用授予的权限。 此提示旨在中断应用陷入的任何潜在的无限循环,因为应用几乎没有理由在一小时内向用户请求十个令牌。

申请的数据类型

OAuth apps 可以申请多种类型的数据。

数据类型说明
提交状态您可以授权应用程序报告您的提交状态。 提交状态访问权限允许应用程序确定对特定提交的构建是否成功。 应用程序无法访问您的代码,但可以读取和写入特定提交的状态信息。
部署部署状态访问权限允许应用程序根据公共和私有仓库的特定提交确定部署是否成功。 应用程序无法访问您的代码。
GistsGist 访问权限允许应用读取或写入公共和机密 Gist。
挂钩Webhook 访问权限允许应用在你管理的存储库上读取或写入挂钩配置。
通知通知访问权限允许应用程序读取您的 GitHub Enterprise Server 通知,如议题和拉取请求的评论。 但应用程序仍然无法访问仓库中的任何内容。
Organizations and teams(组织和团队)组织和团队访问权限允许应用程序访问并管理组织和团队成员资格。
个人用户数据用户数据包括您的用户个人资料中的信息,例如您的姓名、电子邮件地址和地点。
存储库仓库信息包括贡献者的姓名、您创建的分支以及仓库中的实际文件。 应用程序可以申请访问用户级别的公共或私有仓库。
仓库删除应用程序可以申请删除您管理的仓库,但无法访问您的代码。

申请更新的权限

当 OAuth apps 申请新的访问权限时,将会通知其当前权限与新权限之间的差异。