Skip to main content

此版本的 GitHub Enterprise 已停止服务 2022-06-03. 即使针对重大安全问题,也不会发布补丁。 要获得更好的性能、改进的安全性和新功能,请升级到 GitHub Enterprise 的最新版本。 如需升级方面的帮助,请联系 GitHub Enterprise 支持

配置包的访问控制和可见性

选择谁对容器� 像具有读取、写入或管理员访问权限,以及容器� 像在 GitHub 上的可见性。

GitHub Packages is available with GitHub Free, GitHub Pro, GitHub Free for organizations, GitHub Team, GitHub Enterprise Cloud, GitHub Enterprise Server 3.0 or higher, and GitHub AE. For more information about upgrading your GitHub Enterprise Server instance, see "About upgrades to new releases" and refer to the 升级助手 to find the upgrade path from your current release version.

具有精细权限的包仅限于个人用户或组织帐户。 您可以从与包相连(或链接)的仓库分别更改包的访问控制和可见性。

目前,您只能对 Container registry 使用粒度权限。 粒度权限不支持我们的其他软件包注册表,如 npm 注册表。

有关仓库作用域的包、与包相关的 PAT 作用域或管理操作工作流程的权限的更多信息,请参阅“关于 GitHub Packages 的权限”。

容器� 像的可见性和访问权限

如果您对容器� 像具有管理员权限,可以将容器� 像的访问权限设置为私有或公有。 公有� 像允许匿名访问,� 需身份验证或通过 CLI 登录即可进行拉取。

作为管理员,您还可以授予容器� 像的访问权限,该权限与在组织和仓库级别设置的权限不同。

对于由个人帐户发布和拥有的容器� 像,您可以向任何人授予访问角色。 对于组织发布和拥有的容器� 像,您可以为组织中的任何人或团队授予访问角色。

权限访问描述
读取可以下载包。
可以读取包元数据。
写入可以上� 和下载此包。
可以读取和写入包元数据。
管理员可以上� 、下载、� 除和管理此包。
可以读取和写入包元数据。
可以授予包权限。

为个人帐户配置对容器� 像的访问

如果您对个人帐户拥有的容器� 像具有管理员权限,您可以向其他用户分配读取、写入或管理员角色。 有关这些权限角色的更多信息,请参阅“容器� 像的可见性和访问权限”。

如果您的软件包是私人或内部的并且由组织拥有,则您只能向其他组织成员或团队授予访问。

  1. 搜索并选择您的包。
  2. 在包登录页的右上角,单击 Package settings(包设置)包设置按钮
  3. 在软件包设置页面上,单击 Invite teams or people(邀请团队或人员),然后输入名称、用户名或您想要授予访问权限的人员的电子邮件地址。 不能授予团队访问个人帐户拥有的容器� 像。 容器访问邀请按钮
  4. 在用户名或团队名称旁边,使用“Role(角色)”下拉菜单选择所需的权限级别。 容器访问选项

所选用户将自动被授予访问权限,不需要先接受邀请。

为企业配置对容器� 像的访问

如果您对组织拥有的容器� 像具有管理员权限,您可以向其他用户和团队分配读取、写入或管理员角色。 有关这些权限角色的更多信息,请参阅“容器� 像的可见性和访问权限”。

如果您的软件包是私人或内部的并且由组织拥有,则您只能向其他组织成员或团队授予访问。

  1. 在 GitHub 上,导航到组织的主页面。

  2. 在组织名称下,单击 Packages(包)

    组织登陆页面上的“包”选项卡

  3. 搜索并选择您的包。

  4. 在包登录页的右上角,单击 Package settings(包设置)包设置按钮

  5. 在软件包设置页面上,单击 Invite teams or people(邀请团队或人员),然后输入名称、用户名或您想要授予访问权限的人员的电子邮件地址。 您还可以从组织输入团队名称,以允许所有团队成员访问。 容器访问邀请按钮

  6. 在用户名或团队名称旁边,使用“Role(角色)”下拉菜单选择所需的权限级别。 容器访问选项

所选用户或团队将自动被授予访问权限,不需要先接受邀请。

从仓库继承容器� 像的访问权限

要通过 GitHub Actions 工作流程简化包管理,您可以让容器� 像默认继承仓库的访问权限。

如果您继承了存储包工作流程的仓库的访问权限,则可以通过仓库的权限调整对包的访问权限。

仓库一旦同步,您就� 法访问包的精细访问设置。 要通过精细的包访问设置自定义包的权限,您必须先� 除同步的仓库。

  1. 在 GitHub 上,导航到组织的主页面。

  2. 在组织名称下,单击 Packages(包)

    组织登陆页面上的“包”选项卡

  3. 搜索并选择您的包。

  4. 在包登录页的右上角,单击 Package settings(包设置)包设置按钮

  5. 在“Repository source(仓库来源)”下,选择 Inherit access from repository (recommended)(从仓库继承访问权限 [推荐])继承仓库访问权限复选框

确保工作流程访问您的包

为确保 GitHub Actions 工作流程能访问您的包,您必须授予存储工作流程的仓库以明确的访问权限。

指定的仓库不需要是保存包源代� �的仓库。 您可以授予多个仓库工作流程对包的访问权限。

注意:通过 Actions access(操作访问)菜单选项同步容器� 像与仓库不同于将容器连接到仓库。 有关将仓库链接到容器的更多信息,请参阅“将仓库连接到包”。

用户帐户拥有的容器� 像的 GitHub Actions 访问权限

  1. 搜索并选择您的包。
  2. 在包登录页的右上角,单击 Package settings(包设置)包设置按钮
  3. 在左侧边� �中,单击 Actions access(操作访问)左侧菜单中的"Actions access(操作访问)"选项
  4. 为确保工作流程有权访问容器包,您必须添� 存储工作流程的仓库。 单击 Add repository(添� 仓库)并搜索要添� 的仓库。 "添� 仓库"按钮
  5. (使用“role(角色)”下拉菜单,选择您希望仓库访问您的容器� 像所必须拥有的默认访问权限。 授予仓库的权限访问级别

要进一步自定义对容器� 像的访问,请参阅“配置对个人帐户的容器� 像的访问”。

组织拥有的容器� 像的 GitHub Actions 访问权限

  1. 在 GitHub 上,导航到组织的主页面。

  2. 在组织名称下,单击 Packages(包)

    组织登陆页面上的“包”选项卡

  3. 搜索并选择您的包。

  4. 在包登录页的右上角,单击 Package settings(包设置)包设置按钮

  5. 在左侧边� �中,单击 Actions access(操作访问)左侧菜单中的"Actions access(操作访问)"选项

  6. 单击 Add repository(添� 仓库)并搜索要添� 的仓库。 "添� 仓库"按钮

  7. 使用“role(角色)”下拉菜单,选择您希望仓库成员访问您的容器� 像所必须拥有的默认访问权限。 外部协作者将不包括在内。 授予仓库的权限访问级别

要进一步自定义对容器� 像的访问,请参阅“配置对组织的容器� 像的访问”。

为个人帐户配置容器� 像的可见性

首次发布包时,默认可见性是私有的,只有您才能看到包。 您可以通过更改访问设置来修改私有或公共容器� 像的访问权限。

公共包可以匿名访问,� 需身份验证。 包一旦被设为公共,便� 法再次将其设为私有。

  1. 搜索并选择您的包。

  2. 在包登录页的右上角,单击 Package settings(包设置)包设置按钮

  3. 在“Danger Zone(危险区域)”下,选择可见性设置:

    • 要使容器� 像对任何人都可见,请单击“Make public(设为公共)”。

    警告:包一旦被设为公共,便� 法再次将其设为私有。

    - 要使容器� 像只对选择的人员可见,请单击“**Make private(设为私有)**”。 ![容器可见性选项](/assets/images/help/package-registry/container-visibility-option.png)

组织成员的容器创建可见性

您可以选择组织成员默认可以发布的容器的可见性。

  1. 在 GitHub Enterprise Server 的右上角,单击您的头像,然后单击 Your organizations(您的组织)个人资料菜单中的组织
  2. 在组织旁边,单击 Settings(设置)设置按钮
  3. 在左侧,单击 Packages(包)
  4. 在“Container creation(容器创建)”下,选择是要启用公共、私有或内部容器� 像。
    • 要让组织成员创建公共容器� 像,请单击 Public(公共)
    • 要让组织成员创建只对其他组织成员可见的私有容器� 像,请单击 Private(私有)。 您可以进一步自定义私有容器� 像的可见性。
    • 要使组织成员能够创建对所有组织成员可见的内部容器� 像,请单击 Internal(内部)。 如果组织属于企业,则容器� 像将对所有企业成员可见。 组织成员发布的容器图像的可见性选项

为组织配置容器� 像的可见性

首次发布包时,默认可见性是私有的,只有您才能看到包。 您可以通过访问设置授予用户或团队对容器� 像的不同访问角色。

公共包可以匿名访问,� 需身份验证。 包一旦被设为公共,便� 法再次将其设为私有。

  1. 在 GitHub 上,导航到组织的主页面。

  2. 在组织名称下,单击 Packages(包)

    组织登陆页面上的“包”选项卡

  3. 搜索并选择您的包。

  4. 在包登录页的右上角,单击 Package settings(包设置)包设置按钮

  5. 在“Danger Zone(危险区域)”下,选择可见性设置:

    • 要使容器� 像对任何人都可见,请单击“Make public(设为公共)”。

    警告:包一旦被设为公共,便� 法再次将其设为私有。

    - 要使容器� 像只对选择的人员可见,请单击“**Make private(设为私有)**”。 ![容器可见性选项](/assets/images/help/package-registry/container-visibility-option.png)