Skip to content

[Pages] Allow customising the access level for group level enforced access control

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Summary

In a Self-Managed GitLab instance running v17.10.5 the Pages access control dropdown list is greyed out and defaults to Only project member when Disable public access to Pages sites is checked in the top-level group Admin - Preferences settings.

This is a problem for the customer because they cannot have public Pages, and it is not feasible to force users to invite potentially hundreds of users per project, just to allow them to see their GitLab Pages. If the project is set to Internal, then the expectation is that the Pages project can use the Everyone with access option, so all internal users can see the Pages.

ZD - 625057 (Internal)

Steps to reproduce

Recreated the issue in a v17.9.8 Self-Managed instance.

Created a top-level group, subgroup and Pages project (internal). In Pages project - General Setting, the Pages dropdown defaults to Everyone with access and all 3 options are available for selection (Only project membersEveryone with access and Everyone).

Navigate to the top-level group and go to Admin - Preferences and check the Pages - Disable public access to Pages sites checkbox and save.

Navigate back to the Pages project settings and the Pages dropdown is now greyed out and set to Only project members and the dropdown box is no longer selectable.

Example Project

What is the current bug behavior?

When the disable public access to Pages site checkbox is checked at the top-level group Admin - Preferences settings the Everyone with access option becomes unavailable in the Pages project. The customer requires public access to be disabled at the instance level and Everyone with access option in the Pages project.

What is the expected correct behavior?

For Internal projects, allow all GitLab members to see the Pages (without having to invite them to the project) and have public access disabled.

Relevant logs and/or screenshots

Output of checks

Results of GitLab environment info

Expand for output related to GitLab environment info

   (For installations with omnibus-gitlab package run and paste the output of: \\\\\\\`sudo gitlab-rake gitlab:env:info\\\\\\\`)  (For installations from source run and paste the output of: \\\\\\\`sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production\\\\\\\`)    

Results of GitLab application Check

Expand for output related to the GitLab application check

  (For installations with omnibus-gitlab package run and paste the output of: \\\`sudo gitlab-rake gitlab:check SANITIZE=true\\\`)  (For installations from source run and paste the output of: \\\`sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production SANITIZE=true\\\`)  (we will only investigate if the tests are passing)   

Recent update:

In %18.5, the setting was updated to 'Remove public access for group Pages' as part of this MR. When this setting is enabled at the group level, users can still edit project-level access settings, but the public option is no longer available.

Possible fixes

Edited by Naman Jagdish Gala