I have setup communities in my partner Org and trying to maintain vacation for all my Contacts. Below is the object properties:
Account (Private) Contact (Controlled by Parent) Vacation (Custom Object - M-D to Contact)
I have created a contact and enables as Communitiy User and assigned the profile with Licence "Customer Community Login".
On login to community, when I try to fill a Vacation record, I get "insufficient permission" error.
To debug, I created another custom object "Test" without any M-D and with proper permission to the Community user profile, am able to create the record for this "Test" object. As soon as I added a M-D to contact, I ended up with "insufficient" error on "Test" object too.
To solve, I shared the respective Account with "All Partner Users" using Manual Sharing and also given Read/Edit on Account and Read/Create/Edit on Contact for this profile. But that still didn't solve the problem.
To summarize, the Community user with "Customer Community Login" profile cannot update Contact whose OWD is private. How to share the edit permission to this profile.