Apart from Security roles that allow controlling record level access, Dynamics 365/CRM also supports Field Level Security that allows you to control access to individual fields. Using Field Level Security, you can control ‘Read’, ‘Update’ and ‘Create’ access. If a user does not have “Read” access to a particular field, a lot of your processes could break. In one of our earlier blogs, we had specified how a workflow execution failed because the user under which the workflow was being executed did not have access to the field using the workflow logic. And now another scenario where field level security could create problem, Views and conditions in there.
Records missing from views:
You have designed a view and applied a filter on a particular field of the entity to filter the records to be displayed in the view. And that field happens to be one with Field Level Security enabled.
In the example below, we have taken the Country field that has been enabled for FLS
To prevent the value of this field from being displayed to the users, a field security profile was created with no permissions to this field. The user was then added to this profile.
The default lookup view was modified to display records for a particular country
The user added to the Field Security Profile created above complained of no records being shown on this view 🙂
Enable Read access to the field in the field security profile or remove the field from the filter criteria of the view.
Conclusion:
Use the Field Security Profile wisely and think of the business logic that you may have applied around the fields that have been secured and its impact on the process.