-
Notifications
You must be signed in to change notification settings - Fork 0
Description
First reported as http://issues.umbraco.org/issue/CON-1022 on Umbraco 7.6.12 and Forms 6.0.5.
When a new form is created all other users with access to Forms can see and edit that form. When a new user is created they have access to all forms.
It seems Umbraco Forms has an overall permissions record for each user (Manage Forms, Manage Datasources etc) and per-user permissions records for each form (Access to form). If any permissions record is missing, as they are for new users and new forms, the default is to 'allow'. The default should be to 'deny'.
For anyone looking for a workaround until this is fixed, I have written some code which looks for any missing permissions records and sets them to 'deny'. Existing permissions, either 'allow' or 'deny', are preserved. Ideally the code would be run when a new user or form is created, but there don't seem to be events for either. Instead I plan to run it frequently using a scheduled task to call it as a web API:
https://github.com/east-sussex-county-council/Escc.Umbraco.Forms/
https://www.nuget.org/packages?q=Escc.Umbraco.Forms
The controller code for the entries viewer also has this assumption that data should not be secured:
//By default set to have access (in case we do not find the current user's per indivudal form security item)
$scope.hasAccessToCurrentForm = true;