Learn Salesforce Roles and Profiles in 5 Minutes (Ft. Permission Sets)
Profiles, roles and permission sets work together to determine what Salesforce users can see and do inside Salesforce. I remember security & access was one of the toughest topics on the Salesforce Admin certification exam. There is no way around these concepts, as they are foundational to how Salesforce records are visible and editable. So, what are the differences between Salesforce Roles and Profiles?
While I was attempting to wrap my head around the differences between Salesforce roles and profiles, there was a simple mantra that I said to myself over and over again, and then took into the exam with me: “Roles see, profiles do”.
That is an oversimplification but it is the best way to start learning about profiles vs. roles in Salesforce. In this post, I will dive into the differences between the two concepts. Come with me as I take you on a journey into how Salesforce permissions work.
What is a Salesforce Profile?
Profiles control what users can do in your Salesforce org. This can be referred to as CRED:
- C = create
- R = read
- E = edit
- D = delete
You may want some users in your org to read and edit Leads, but not delete them. CRED enables you to mix and match what a specific user can do with each object.
See how this looks on a profile’s settings (found under the ‘Object Permissions’ section):
In addition to objects, profiles also control:
- Field-level security (which fields are visible or editable),
- Page layouts,
- Record types,
Each Salesforce user in your org has a profile. Profiles are designed to group users into functions, for example, ‘Sales’, ‘Support’ etc.
The most important profile in the org is ‘System Administrator’. Users in this profile have absolute access to do anything. In addition to CRED, they will have ‘View all’ and ‘Modify all’ selected for each object.
They will also have ultimate permissions, namely ‘Modify all data’, ‘Customize application’ that you would not want to give to any other users! (found under the ‘Administrative Permissions’ section).
What is a Salesforce Role? – and the Role Hierarchy
Let’s switch to thinking about roles, which control what users can see in your Salesforce org.
Roles are designed to increase data visibility, to open up access to Salesforce records. You will have a baseline visibility set for each object in your org, known as the ‘org wide default’ (organizational wide default, OWD). Examples of this could be:
- Opportunities are set to ‘Private’, which means that users can only see the opportunities they own.
- Accounts are set to ‘Public Read/Write’, so that any user can help to update account information.
You should know that there are defaults that are already set. I’m not going to dive into details on OWD right now, but I want you to remember the golden rule…
Golden rule: the ‘org wide default’ should be set to the most restrictive level. Salesforce permissions work by opening up access, not by locking them down. So, start with the strictest in mind.
There are two ways to increase data visibility via roles, essentially superseding (pushing past) the OWD:
- The Role Hierarchy
- Sharing Rules
Salesforce Roles and Profiles
There’s some confusion when a Salesforce org is using both profiles and roles. They are designed to be used together – it is not an ‘either/or’ decision.
It may help to think in different shapes. Profiles are like circles, whereas roles are arranged into a hierarchy (when using the Role Hierarchy):
Profiles are like circles of users that share the same function, eg. ‘Marketing’, ‘System Admin’, ‘Sales’, ‘Support’. Roles are how users relate to each other in a hierarchy, eg. the ‘VP of Sales’ is above the Sales Managers in the role hierarchy:
Note: Sharing Rules are used to extend the Role Hierarchy, so that you are not restricted to the strict top-down sharing as laid out in the hierarchy – in other words, Sharing Rules can enable you to open up record visibility horizontally across the hierarchy.
What’s the Difference Between a Role and Profile in Salesforce?
|Determines what users can...||Do - create, read, edit, delete||See - record visibility|
|Required for each user?||✓||X - it’s optional|
|Imagine in the shape of:||Circles, grouping users with similar functions.||Hierarchy, that splits users with more authority from those with less.|
|Controls access to:||Objects, field-level security (which fields are visible or editable), page layouts, record types, apps, tabs.||Records, folders.|
What About Permission Sets? (Permission Sets vs. Profiles)
Once you have got to grips with profiles and roles, you have mastered a core Salesforce Admin concept that will serve you well. What about permission sets, then? Not another Salesforce data access concept! Fear not, I will explain the differences between profiles and permission sets quickly, and painlessly.
Permission sets could be considered add-ons for profiles. They offer flexibility in how you add certain permissions (objects, field-level security, page layouts, record types, apps, tabs) to certain users – almost like you are tagging an individual user. In order to grant a very specific ability to a user, you obviously don’t want to create a whole new profile just for that one difference between their abilities and the rest of their team’s!
Let’s take an example:
There is a sales team, who have the profile ‘Sales User’. Only Carole should be able to change the team’s email templates, so the Admin has created a Permission Set called ‘Modify Email Templates’ which she has added to Carole’s user record.
Permission sets are visible from the related list on the user’s record:
Permission sets can simply be added and removed, from ‘Available Permission Sets’ to ‘Enabled Permission Sets’ – as shown below:
You should also be aware of Permission Set Groups. These were new in the Spring ‘20 release, created to revolutionize how Admins can organize org permissions, allowing Permission Sets to be grouped together and assigned to users.
Profiles, roles, and Permission sets work together to determine what Salesforce users can see and do inside Salesforce. These concepts are foundational to how Salesforce records are visible and editable, and is absolutely essential knowledge in order to become a Salesforce Admin.
Now you know the differences between a Salesforce Role and Profile, plus how Permission sets come into the picture. There’s some confusion when a Salesforce org is using both profiles and roles. They are designed to be used together – it is not an ‘either/or’ decision.
Just remember the simple mantra: “Roles see, profiles do” if you’re ever in doubt.
great article. Thank you.
Superb article on Roles and Profiles… I would like to refer it to all my friends whenever in doubt about this topic…!
Thank you Tessy!
I really really wish I had found this before I got certified. This was the hardest thing to wrap my head around. Awesome article. So clear.
Thank you for the great feedback!
It’s a really great artical that you write. It’s clear my doubt regarding to Profile, Permission Set and Roles.
I love your Mantra “Profile can do and Roles can see.”
Very well explained. Also very clear that permission sets open permissions for specific users, not being possible to apply them to roles or profiles.
Thank you Jaime, glad you found it useful
Anil kumar Reddy
Good Explanation straight to the point without any confusion .I understood very well !
Thanks ! Great article 🙂
Glad you enjoyed it!
Great article Sam.!!
One question: If OWD for an object is Public Read Only, and for a Manager’s profile(Ben as Manager) in Role Hierarchy does NOT have ‘Read’ permission on that object. User Sam is record owner of that object.
What action manager Ben can take on the user Sam’s records of that object.? nothing or only read access or read & write?
Read access only
This is really helpful. I’ve been struggling to conceptualize where FLS fits into the security and sharing model, and this explanation makes it clear. Thank you!
This is a great article! I never knew how to explain this to other teams in our organization. I’ll simply share this article with them 🙂
great article, very nicely explained.
This is literally the only question I ask an admin during an interview and it is amazing how many certified admins can not effectively explain the difference.
Very helpful to a newbie like me, thank you
Thanks Kim, appreciate your feedback
Best permission article ever. I finally understand this topic.
Thank you very much!
Thank you Sam! it really easy to understand and it helped me.
Absolutely wonderful article sam…kudos to ur efforts..thanks.
SATEESH R BAGALKOT
Clear and made very easy to understand the concepts, thank you very much
Amazing article! I love it!
Very very very well explained . Excellent content .Made this soo easy for me.Hurray
Thank you Lucy. This is the best article I have read on Salesforce Roles and Permissions. This helps immensely to a newbie like me.
great …!very clear even a person new to salesforce can understand clearly.
1) I have a profile similar to system admin, however I do not want the user to create/edit (should only view) roles, profiles and permission sets. Which permission would be useful to restrict this
2) I have a profile similar to system admin, however I do not want the user to create/edit (should only view) roles, profiles and permission sets. Should also be not able to create object/ fields. Which permission would be useful to restrict this
2) User should only have access to Object Manager, but should not have permission to create roles, profiles, permission sets etc. Which permission should be granted
3) User should only have “View” access to Object Manager. Should not be able to create objects, fields etc – Can we do this ?
Hey Amit! You should check out Strongpoint – their solution gives you several tools for managing access control in your Org on an ongoing basis. You can easily identify and consolidate similar profiles to cleanup and prevent unauthorized access or build intelligent policies to alert you when things change. You can even review access by Object or conduct detailed reviews of access and permissions by User. Check it out here: https://www.strongpoint.io/salesforce-access-management
Explained it better to me than Trailhead, thank you! Great for prepping for the exam.
Wael S Ibrahim
Absolutely great article thank you one question how in real life A group of Salesforce Administrators coherently work in a large organization to setup, maintain and secure the company’s org account without overriding each other and properly auditing the work?
Thanks for information about profiles ,roles and permission sets.
The best article!
Great explanation – have just forwarded the article to my mentee 🙂
hi thanks for expalin is really clear, i just want to ask about how can i create alert when some profile made or changes access.? thanks
Thanks For the Article, Explained in too easy format, Liked it, cleared all my doubts…
Thanks for this great Article you shared with us. It help me to clear my doubts and concepts. Thank you once again
Super clear with great images. Thank you!
Thanks for reading!
I can’t thank you enough for writing this article
Thanks for reading!
This was so helpful! Thank you.
You provided so much clarity in an easy-to-remember format.
Your explanation and visuals are brilliant. I’m taking the Salesforce Administrator Exam tomorrow. I will walk with a smile on my face as I keep saying your mantra for roles and profiles in my mind.
Thanks for your wonderful feedback and good luck with your exam!
Hi Lucy please share for owd as well. Thankyou for this blog
We have an article on OWD coming soon!
Thanks a lot Lucy , It Will help me for my Salesforce administration Exam , simply wonderful explanation.
Thanks for wonderful information. It opened my mind about profiles vs roles.
Thank you! Just had a request from user A to see the same things as user B, they have different profiles.
What I have done is given User A the same Role as user B.
Thank You @Lucy Mazalon and @Christine for this breakdown of Access to Permissions and Roles.
I feel like I understand better, what I am learning in My Trailhead process.
Hi Team, with the changes coming on Permission Sets vs Profiles, will you be doing an article about that?
Thanks for providing such great content.
You can stay up to date on the changes in our article here: https://www.salesforceben.com/salesforce-to-retire-permissions-on-profiles-whats-next/
Any time users need to edit records, does that automatically require Sharing Rules to be configured on Profiles instead of Roles?
Leo da Silva
Excellent article. Thanks. 🙂