极狐GitLab Pages 访问控制

  • Tier: 基础版,专业版,旗舰版
  • Offering: JihuLab.com,私有化部署

你可以在项目中启用 Pages 访问控制,前提是你的管理员已经在极狐GitLab 实例上启用访问控制功能。启用后,只有经过身份验证的项目成员(至少是访客)默认可以访问你的网站:

  1. 在左侧边栏中,选择 搜索或转到 并找到你的项目。

  2. 选择 设置 > 常规

  3. 展开 可见性、项目功能、权限

  4. 切换 Pages 按钮以启用访问控制。如果看不到切换按钮,则表示未启用。请你的管理员启用它

  5. Pages 访问控制下拉列表允许你根据项目的可见性设置谁可以查看由极狐GitLab Pages 托管的页面:

    • 如果你的项目是私有的:
      • 仅项目成员:只有项目成员可以浏览网站。
      • 所有人:无论项目成员身份如何,登录和未登录极狐GitLab 的所有人都可以浏览网站。
    • 如果你的项目是内部的:
      • 仅项目成员:只有项目成员可以浏览网站。
      • 所有有权限的人:无论项目成员身份如何,登录极狐GitLab 的所有人都可以浏览网站。外部用户只有在项目中有成员身份时才能访问网站。
      • 所有人:无论项目成员身份如何,登录和未登录极狐GitLab 的所有人都可以浏览网站。
    • 如果你的项目是公开的:
      • 仅项目成员:只有项目成员可以浏览网站。
      • 所有有权限的人:无论项目成员身份如何,登录和未登录极狐GitLab 的所有人都可以浏览网站。
  6. 选择 保存更改。你的更改可能不会立即生效。极狐GitLab Pages 使用缓存机制来提高效率。更改可能需要在缓存失效后生效,通常不到一分钟。

下次有人尝试访问你的网站并启用了访问控制时,他们会看到一个页面,要求登录极狐GitLab 并验证他们能否访问该网站。

将 Pages 访问限制为群组及其子群组的项目成员#

History
    • 引入于极狐GitLab 17.9。

你可以为群组配置一个设置,将 Pages 访问限制为仅项目成员。启用后,群组及其子群组中的所有项目仅对成员可见。

前提条件

  • Pages 的公共访问不能在实例级别禁用
  • 你必须具有群组的所有者角色。

操作步骤:

  1. 在左侧边栏中,选择 搜索或转到 并找到你的群组。
  2. 选择 设置 > 常规
  3. 展开 权限和群组功能
  4. Pages 访问控制 下,选择 限制所有群组项目的访问仅限项目成员
  5. 选择 保存更改

极狐GitLab Pages 使用缓存来提高效率。访问设置的更改通常在缓存更新后的一分钟内生效。

使用访问令牌进行身份验证#

History
    • 引入于极狐GitLab 17.10。

要对受限的极狐GitLab Pages 站点进行身份验证,可以使用访问令牌提供 Authorization 标头。

前提条件:

例如,要使用符合 OAuth 标准的标头使用访问令牌:

shell
curl --header "Authorization: Bearer <your_access_token>" <published_pages_url>

对于无效或未经授权的访问令牌,将返回404

终止 Pages 会话#

要退出极狐GitLab Pages 网站,请撤销应用程序访问令牌:

  1. 在左侧边栏中,选择你的头像。
  2. 选择 编辑个人资料
  3. 选择 应用程序
  4. 已授权的应用程序 部分中,找到 极狐GitLab Pages 条目,并选择 撤销