How do I prevent a user from being able to edit and delete records directly in an object, but not through a master-detail relationship that is related to the same object?

For example,

We have 3 objects, Teachers (contains the teachers details), Contacts (contains the contacts details)and Timesheet (contains the details of the lesson with a master detail relationship with Teachers and Contacts)

I only want the teachers to have the ability to read and create new contacts, but not edit and delete them in the typical sense, meaning I don’t want them to be able to explicitly go to the contact object and click into the fields and be able to edit them that way. However, I do want to be able to modify them via a master detail relationship the timesheet object.

If I remove the edit and delete permissions from Contacts, I am unable to create a new time sheet object because it gives the error:

“Insufficient Privileges You do not have the level of access necessary to perform the operation you requested. Please contact the owner of the record or your administrator if access is necessary. ”

How can I go about allowing the teachers to modify this timesheet object without setting the Standard Object Permissions for Contacts to allow editing and deleting.

1 Answer 1


In the contact page layout make the fields "read only"

  • To ask on this, you'll have to go to each field on the page layout for contacts, and make it read only as suggested above. You'll also want to remove the 'Edit' & 'Delete' Buttons. Keep in mind, if you have anything such as enhanced list views, they will be able to edit from there, so you'll have to play around and make sure there isn't any other way they could edit contacts.
    – Double A
    Commented Sep 20, 2014 at 16:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .