Page MenuHomePhabricator

Correct overbroad automatic capability grant of global settings objects
ClosedPublic

Authored by epriestley on May 9 2022, 10:10 PM.
Tags
None
Referenced Files
F19514574: D21811.diff
Wed, Jan 14, 3:08 AM
F19514400: D21811.id.diff
Wed, Jan 14, 1:40 AM
F19512271: D21811.diff
Mon, Jan 12, 3:30 PM
F19511294: D21811.diff
Mon, Jan 12, 12:34 AM
F19426838: D21811.diff
Sun, Dec 28, 7:38 AM
F19071514: D21811.id51987.diff
Nov 30 2025, 7:51 PM
F19057031: D21811.id51987.diff
Nov 28 2025, 9:13 PM
F19023626: D21811.id51988.diff
Nov 24 2025, 1:08 AM
Subscribers
None

Details

Summary

Ref T13679. In D16983, global settings objects were given an exception to let logged-out users see them, even on installs with no "public" user role.

This exception is too broad and grants everyone all capabilities, not just "CAN_VIEW". In particular, it incorrectly grants "CAN_EDIT", so any user can edit global settings defaults.

Restrict this grant to "CAN_VIEW".

Test Plan
  • As a non-administrator, tried to edit global settings.
  • Before: could.
  • After: could not.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable