HELLO Salesforce Thinkers, In our previous blog we learned about Salesforce Data Security and Access – Part 6 (Profiles) In this blog we are going to learn about “Permission sets”. We will continue our learning journey by a series of blogs to go deeper and understand the Salesforce Data Security Model, Visibility and Access.

Permission sets:
A permission set is a collection of settings and permissions that give users access to various tools and functions.
The settings and permissions in permission sets are also found in profiles, but permission sets extend users functional access without changing their profiles.
We can define profiles to grant minimum permissions and settings that every type of user needs, then we can use permission set to grant additional access.
For example, let’s see when to use permission sets?
Permissions sets are very useful when we want to assign permissions to users when necessary without doing any changes to user’s profile.
We have many users in your organization with some fundamental job functions. We have assigned all of then with one profile that grants them all access to do their job.
But some set of people are working on special custom app and they need to access that app in this condition, for this type of special users we can create permission sets and then assigned to those special users.
We have to give users access to a custom object without changing the profile so, what we do in this condition?
yes… we go for permission set
To give users access to a custom object, Create a permission set, enable the required permissions for the object, and assign the permission set to the users.
We never have to change profiles, or create a profile for a single use case.
Note :
- Users can have only one profile, but they can have multiple permission sets at a time.
- Permissions sets are assigned to users.
Permissions which can be configured in permission sets are as follows:
Whatever we can manage at profiles (Like Object permissions, Field Permissions, User permissions, Tab settings, App settings, Apex class permission, visual force permission) the same we can manage in permissions sets also.
- Assigned apps
- Object settings( Tab settings, Record type settings ,Object permission , Field permissions)
- App permissions
- Apex class access
- Visual page access
- System permissions
How to create a permission sets?
Navigate to
Setup >> Enter Permission Sets in the quick find box >>Select Permissions Sets.

Click on New Button,

and Enter Label, Description and User license.

Click on Next button.
Let’s Assign permissions, for this go to Apps section and click on Assigned Apps as shown below.
Select Assigned Apps.

and click on Edit button.

Move the apps from Available to to Enabled Apps.

Click Save.
Assigning permission Sets to a User:
Permission sets >> Select the permission set ( permission set that you want to assign to users) >> Manage Assignments

Click on Add Assignments

Select the User, and Click on Assign.

Then click on Done.

A successful message will be displayed.
Note:
Users can have only one profile but, depending on the Salesforce edition, they can have multiple permission sets. We can assign permission sets to various types of users, regardless of their profiles.
Thank you for reading, Hope the blog is helpful.