Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
Full Object-Level Security entry
How-to guide

Configure object permissions

Configuring Object-Level Security involves declaring permissions per profile and per permission set, then validating the effective access. The steps below cover the standard workflow.

By Dipojjal Chakrabarti · Founder & Editor, Salesforce DictionaryLast updated May 19, 2026

Configuring Object-Level Security involves declaring permissions per profile and per permission set, then validating the effective access. The steps below cover the standard workflow.

  1. Identify the object and user population

    Determine which users need access to which objects with what level. Document the matrix before configuring.

  2. Edit the profile

    Setup > Profiles > select profile > Object Settings. For each object, set the CRUD permissions and View All/Modify All if needed.

  3. Create permission sets for variants

    For access needs that vary among users with the same profile, create permission sets. Assign to specific users.

  4. Test with a sample user

    Login As. Confirm the user can access the object as expected. Test create, edit, delete operations to verify CRUD permissions.

  5. Cross-check sharing

    Object access shows records exist; sharing determines specific record visibility. Confirm sharing rules align with object access intent.

  6. Document the matrix

    Maintain a documented profile/permission set matrix showing object access per user population. Future admins will need this.

  7. Audit quarterly

    Review permissions periodically. View All and Modify All assignments are particularly worth verifying; over-assignment is a security risk.

Key options
Readremember

View existing records. The baseline access permission.

Createremember

Insert new records.

Editremember

Update existing records. Implies Read.

Deleteremember

Remove records. Implies Edit.

View All / Modify Allremember

Override sharing to see/edit all records of the object.

Gotchas
  • Object access without sharing shows no records. The user knows the object exists but sees an empty list view.
  • Modify All bypasses sharing entirely for that object. Sensitive permission; audit assignments.
  • New custom objects default to no access. Admins must explicitly add permissions; the default is intentional safety.
  • Permission sets are additive. A user gets the most permissive grant across their profile and all permission sets.
  • Apex "without sharing" still typically respects CRUD and FLS. The bypass is specifically for record sharing, not all security layers.

See the full Object-Level Security entry

Object-Level Security includes the definition, worked example, deep dive, related terms, and a quiz.