I have a custom object with OWD as private. Now I have a requirement where a user has should be able to EDIT records that are not owned by him But should not be able to delete them. I tried creating a permission set. But a permission set is working only if i give him Modify all access and this includes Delete also (it is not what i wanted). When i un-check Delete which will automatically un-check modify all and at the same time the user will have edit access only to the records he own but not all.

How do i address this issue?

1 Answer 1


You need to write Sharing rule and give the user Read/Write access to the record.

You should not give 'Modify All' permission to the user.

In the user's Profile, Give Read and Edit permission for that Custom Object, if you need all user's of that profile will have Edit access.

Otherwise, for a specific user, if you want to give Edit permission then use permission set and assign permission set to that user.

Suggest you to go through Sharing architecture

Sharing architecture

  • I tried sharing rule too. But still seeing insufficient privileges error only. May 23, 2017 at 15:41
  • First you need to give Edit permission to that user, then sharing rule will come into play. If a user doesn't have Edit permission at Object level then sharing a record with Read/Write access will not serve the purpose May 23, 2017 at 15:43
  • OWD is private. so you need to write sharing rule for that along with permission set assignment with EDIT access May 23, 2017 at 15:47
  • Still not working. This is how i set up a user sharing rule. step-1 name, step-2 Based on Criteria, step-3 Nickname contains ********** , step-4: selected the above user role, step-5 read/write. May 23, 2017 at 15:55
  • Create a public group and add user into a public group. finally select the public group in sharing rule definition May 23, 2017 at 16:23

You must log in to answer this question.

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