While giving permission, IF I need to give permission to a VF Page , then automatically I'll give permission to it's controller .

Then , What are the other components that I definitely need to give permission to?

  1. All the classes available in 'Show dependencies' ?
  2. All the objects in 'show Dependencies' ? Read - If no field update is there Read/Write if querying + Field update is there
  3. Trigger Handler class on the Main object
  4. Any other class/object in any of the Show dependencies

Is the above understanding correct?


You need to give access to visualforce page only. As per the docs:

Once users can access a page, they can execute all Apex that’s associated with the page. This includes:

  • The controller for the page and any Apex classes called from the controller class.
  • Any extension classes for the page and any Apex called from an extension.
  • Any Apex classes associated with custom components within the page.
  • Any classes associated with the page through the use of apex:include or apex:composition.

Detailed information is available at Visualforce Page Security

  • But I do need to give access to the Trigger handler class ? And any class and object fields that the trigger handler class calls?
    – SFDCRookie
    Aug 31 '16 at 6:51
  • Trigger and trigger handler classes would not require any additional access as all of them will belong to same synchronous transaction flow. However you should consider Object access and Field level Security(if fields are present on vf page). Aug 31 '16 at 9:19
  • So trigger handler class access is given automatically based on object read/write permission ? What about the dependent class or object fields of the handler class ?
    – SFDCRookie
    Aug 31 '16 at 10:12
  • I feel this article can help to understand apex excution and permisions in detail : developer.salesforce.com/docs/atlas.en-us.apexcode.meta/… Aug 31 '16 at 12:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.