Make a button on a layout be visible only to a specific group of users

If I want a specific field to be visible only to a specific user or group of users on a layout, I set up field-level security for this field. I want to be able to do the same for my custom button added to a layout. I want a specific button be visible only by a specific group of users.

Is there a way to set a ‘button-level’ security in order to achieve this? It would be perfect if I could use a permission set.

UPDATE:
I know that there were some questions on how to hide a specific button depending on a specific value of an object’s field (I already use this solution is another situation), but I want a different thing. I want to be able to specify a permission to see a specific button for a specific group of users.

Answer

Buttons don’t have a corresponding “button-level” security. There are at least three ways to get around this:

  1. Write a Visualforce page that overrides your default layout. Have that Visualforce page determine if the button should be rendered.

  2. Use page layouts and assign different layouts by profile. Unfortunately, you can’t use permission sets this way.

  3. Create a formula field that makes a link to take them to somewhere, similar to the button. Use permission sets to control access to the link via the field level security. Of course, JavaScript is not going to help you here.

On the other hand, if the button links to a Visualforce page, you could just restrict access to the page itself; they’ll still see the button, but get an error when they click on it.

Attribution
Source : Link , Question Author : Dmitry Nikolaev , Answer Author : sfdcfox

Leave a Comment