Loading

Salesforce 'View All Records' Permission Does Not Automatically Grant Access to Related Parent or Child Objects

Udgivelsesdato: May 12, 2026
Beskrivelse

Salesforce administrators can grant the "View All Records" permission on a specific object to allow users to see all records of that object without requiring the broader "View All Data" permission. However, this permission does not automatically extend to related parent or child objects, which can lead to confusion about what records users can access when the Organization-Wide Default (OWD) sharing model is set to Private or Controlled by Parent.

Løsning

Overview

The following explains how the "View All Records" object permission interacts with the Salesforce sharing model (OWD — Organization-Wide Defaults) when parent and child objects are involved.

Expected Behavior for Parent-Child Access

When the sharing model for a parent object is set to Private, and the child object is set to Controlled by Parent, the expected behavior is:

  • Users can see all records of the parent object.
  • Users can see all child records associated with parent records to which they have Read permission granted via sharing rules, manual sharing, Apex sharing, territory sharing, Role Hierarchy, and so on.
  • Users cannot see standard child records associated with parent records where the only access granted is through the "View All Records [Parent Object]" permission.
  • Users can see custom child records associated with parent records where the only access granted is through the "View All Records [Parent Object]" permission.

Note: The reverse is also true. Granting the "View All Records" permission on a standard child object does not automatically grant access to the parent object.

Example Scenario: Accounts (Private OWD) and Contacts (Controlled by Parent)

Suppose:

  • The OWD for Accounts is Private, and the OWD for Contacts is Controlled by Parent.
  • User A has "View All Records" on Accounts and only Read access on Contacts in their Profile.
  • User B, who is not below User A in the role hierarchy, owns Account A. Contact A is also owned by User B and is associated with Account A.
  • User B has not shared Account A with User A.

In this case, User A can see Account A because of the "View All Records" permission. However, User A cannot see Contact A, because Account A has not been technically "shared" with User A through a sharing rule, manual share, or role hierarchy. If User B manually shares Account A with User A, User A will subsequently gain access to Contact A.

Key Principle: Most Restrictive Permissions Win

The underlying reason for this behavior is that Salesforce applies the most restrictive permissions when evaluating access. This design allows administrators greater control over users' access levels across related objects.

Vidensartikelnummer

000383478

 
Indlæser
Salesforce Help | Article