Your Data Model
Partner (custom table)
Contact (OOB table)
Each Partner → up to 4 Partner Contacts (1:N relationship via a lookup partnerid on Contact)
Case (OOB table)
Linked to Partner via a lookup (partnerid)
Requirement
When a Partner Contact logs in:
They see only their Partner record.
They can also see all Cases for that Partner, even those created by other Partner Contacts.
Why Table Permissions Don’t Work by Default
Table Permissions work great with the OOB Account table because of the "Account Access Type" option, but your Partner table is custom.
You can still achieve the same behavior by using Table Permissions with Relationship paths.
Solution
Step 1. Create Table Permission for Partner
Go to Portal Management → Table Permissions → New.
Table: Partner
Access Type: Contact
Scope: Parent
Parent Table Permission:
Create a Table Permission for Contact:
Table: Contact
Scope: Self
Give Read privileges.
Use this Contact table permission as the Parent of your Partner permission.
Add the relationship filter:
Relationship: partnerid (the lookup on Contact that links to Partner).
Result: Logged-in contact can only see the Partner linked via their partnerid.
Step 2. Create Table Permission for Case
Table: Case
Scope: Parent
Parent Table Permission: Select the Partner table permission created above.
Set required privileges (Read, Append, etc.).
Result: Any Case linked to that Partner will be visible, regardless of which Partner Contact created it.
How it Works
Portal authenticates the user as a Contact.
Contact table permission (Self scope) grants access only to their own Contact record.
Partner table permission (Parent scope) uses the partnerid lookup to give them access to the Partner record linked to their Contact.
Case table permission (Parent scope) uses the Partner table permission to give access to all Cases associated with that Partner.
Why This Works
Access cascades: Contact → Partner → Cases.
No need to use Account or "Account Access Type".
Supports your 1:N relationship (one Partner, up to four Contacts).
Optional: Show only one Partner
If a Partner Contact can only ever belong to one Partner, this is automatic.
If a Contact could belong to multiple Partners, you’d need a many-to-many table permission path.