Settings UI does not support projects with version control enabled
If a Unity project is managed with version control such as Perforce, files may need to be checked out before they can be modified, otherwise leaving files marked as readonly in the file system.
This means that currently there are cases where attempting to modify Shapes settings results in an UnauthorizedAccessException:
UnityEditor.VersionControl.Provider https://docs.unity3d.com/ScriptReference/VersionControl.Provider.html should be used to query the state of any settings or shader files that the settings UI attempts to write to.
If it is not checked out and should be, then the 'Apply' buttons need to be disabled, as well as show an optional 'check out' button.