diff --git a/changelogs/unreleased/skip-pages-auth-no-access.yml b/changelogs/unreleased/skip-pages-auth-no-access.yml
new file mode 100644
index 0000000000000000000000000000000000000000..2a7b1b635da52d904939f99628868f6fc69973d2_Y2hhbmdlbG9ncy91bnJlbGVhc2VkL3NraXAtcGFnZXMtYXV0aC1uby1hY2Nlc3MueW1s
--- /dev/null
+++ b/changelogs/unreleased/skip-pages-auth-no-access.yml
@@ -0,0 +1,5 @@
+---
+title: Skip pages auth settings when access control is disabled
+merge_request: 4952
+author:
+type: fixed
diff --git a/files/gitlab-cookbooks/gitlab-pages/templates/default/gitlab-pages-config.erb b/files/gitlab-cookbooks/gitlab-pages/templates/default/gitlab-pages-config.erb
index b5989107ee222f3b7d37fd3516c396e73dd8e605_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItcGFnZXMvdGVtcGxhdGVzL2RlZmF1bHQvZ2l0bGFiLXBhZ2VzLWNvbmZpZy5lcmI=..2a7b1b635da52d904939f99628868f6fc69973d2_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItcGFnZXMvdGVtcGxhdGVzL2RlZmF1bHQvZ2l0bGFiLXBhZ2VzLWNvbmZpZy5lcmI= 100644
--- a/files/gitlab-cookbooks/gitlab-pages/templates/default/gitlab-pages-config.erb
+++ b/files/gitlab-cookbooks/gitlab-pages/templates/default/gitlab-pages-config.erb
@@ -4,6 +4,7 @@
 daemon-gid=<%= Etc.getpwnam(node['gitlab']['user']['username']).gid %>
 daemon-inplace-chroot=<%= @inplace_chroot %>
 api-secret-key=<%= @api_secret_key_path %>
+<%- if @access_control -%>
 <%- if @gitlab_id -%>
 auth-client-id=<%= @gitlab_id %>
 <%- end -%>
@@ -16,6 +17,7 @@
 <%- if @auth_secret -%>
 auth-secret=<%= @auth_secret %>
 <%- end -%>
+<%- end -%>
 <%- if @zip_cache_expiration -%>
 zip-cache-expiration=<%= @zip_cache_expiration %>
 <%- end -%>
diff --git a/spec/chef/gitlab-pages/recipes/gitlab-pages_spec.rb b/spec/chef/gitlab-pages/recipes/gitlab-pages_spec.rb
index b5989107ee222f3b7d37fd3516c396e73dd8e605_c3BlYy9jaGVmL2dpdGxhYi1wYWdlcy9yZWNpcGVzL2dpdGxhYi1wYWdlc19zcGVjLnJi..2a7b1b635da52d904939f99628868f6fc69973d2_c3BlYy9jaGVmL2dpdGxhYi1wYWdlcy9yZWNpcGVzL2dpdGxhYi1wYWdlc19zcGVjLnJi 100644
--- a/spec/chef/gitlab-pages/recipes/gitlab-pages_spec.rb
+++ b/spec/chef/gitlab-pages/recipes/gitlab-pages_spec.rb
@@ -71,6 +71,21 @@
       expect(chef_run).to render_file("/var/opt/gitlab/gitlab-pages/gitlab-pages-config").with_content(default_content)
     end
 
+    it 'skips rendering the auth settings when access control is disabled' do
+      stub_gitlab_rb(
+        external_url: 'https://gitlab.example.com',
+        pages_external_url: 'https://pages.example.com',
+        gitlab_pages: {
+          access_control: false,
+          auth_secret: 'auth_secret'
+        }
+      )
+
+      expect(chef_run).to render_file("/var/opt/gitlab/gitlab-pages/gitlab-pages-config").with_content { |content|
+        expect(content).not_to match(%r{auth-secret=auth_secret})
+      }
+    end
+
     context 'when access control is enabled' do
       context 'when access control secrets are not specified' do
         before do