Sharing & Security 
Salesforce.com
Why Cloud…?? 
• Bringing down computing costs in organization. 
• Freedom to access data anywhere from any of the devices. 
(Mobile, Tablets, Computers, etc.) 
• Centralized and agile. 
• More Secure than a scattered network. 
• No headache of maintaining servers.
Sharing & Security Importance 
• First of all it is important that who's actually going to be using 
the app. 
• How much access they should have to the data. 
• Otherwise app will expose sensitive information. 
• So the security controls should be configured, and the access 
should be defined.
Controlling Access To Objects 
Controlling the application access can be done by two ways 
which are actually the collection of Settings and Permissions 
• Profile : A mandatory field of user which provides settings and 
permission which are used for data access purpose. 
• Permission Sets : A non-mandatory field that provide extra 
access to objects, fields etc.
Profiles 
What controls a Profile holds: 
• Object Permission 
• Field permissions (Field-level security) 
• User permissions 
• Tab settings 
• App settings 
• Apex class access 
• VisualForce page access 
• Page layouts 
• Record types 
• Login hours 
• Login IP ranges
Standard Profiles 
• Read Only 
• Standard User 
• Marketing User 
• Contract Manager 
• Solution Manager 
• System Administrator 
Creating a new profile will ask you to refer existing profile or 
make a clone of it.
Permission Sets 
What controls a Permission set holds: 
• Object permissions 
• Field permissions(Field Level Security) 
• User permissions 
• Tab settings 
• App settings 
• Apex class access 
• VisualForce page access
License Concept behind the 
User, Profiles & Permission sets 
• While creating a user , profile or a permission set the license 
must be specified. 
• These licenses are having some accessibilities which are 
provided along with them. 
• The license of a user should match with the permission set we 
are applying to it. 
• The licenses of a user, its profile and the permission set that is 
being assigned to it, are the same.
Comparing Profiles & 
Permission Sets 
• User can have only one Profile but can have many permission 
sets. 
• Profiles are having more permissions options than permission 
sets. Record type, Page layout, Login hours, Login IP ranges is 
missing from the permission set. 
• Permissions are mostly used for temporary purpose. 
• Profile are mandatory and used for minimum access. 
• Permission are not mandatory and always used to grant more 
access.
Data Access Concepts 
• Object-Level Security : Preventing a user from seeing, 
creating, editing, or deleting any instance of a particular type 
of object. 
• A profile or a permission set can provide object-level security. 
• Defined using Tab settings and object permissions. 
• Field-Level Security : Preventing a user from seeing, editing, 
or deleting the value for a particular field on an object. 
• A profile or a permission set can provide Field-level security. 
• Provide Read and Edit options for fields. 
• Record-Level Security : Preventing a user for individual object 
records that he is allowed to see.
Record-Level Security can be achieved by: 
• Organization-wide Defaults : Allow us to specify the baseline 
level of access that a user has in our organization. The access 
can be, 
• Private 
• Public Read-only 
• Public Read/Write 
Org-wide defaults do not sets the access levels for a child record of 
Master-detail Relationship. 
• Manual Sharing : Allows record owners to give read and edit 
permissions to users who might not have access to the record 
any other way.
• Role Hierarchies : Allow us to make sure that a user above in 
role hierarchy will always have access to the same records as 
his or her subordinates. 
• Grant access using role hierarchies can be decided from Org-wide 
Defaults for custom objects. 
• Sharing Rule : Allow us to make automatic exceptions to 
organization-wide defaults for particular groups of users. 
• Allows to be based on owner of record & Based on criteria. 
• Share with Public Groups.
Points to Remember about the Record-Level Securities : 
• A Record-Level Security is used to grant more access not to 
restrict access. So we can say Org-default as most restrictive 
among all the record level securities. 
• A record creator can not be changed but the owner of the 
record can be changed. 
• A record can also be shared using the Apex Managed Sharing.
Displaying Field Values and 
Page Layouts According to 
Profiles 
• We can use the different page layouts for different profiles. 
• For that, what we need is the record type. 
• The record type created will be assigned with a new page 
layout created. 
• Afterwards page layouts access can be assigned through the 
Profiles. 
• For field access the page layouts can further be modified.
Exploring ViewAll/ ModifyAll 
• The ViewAll and ModifyAll from the Profile ignores all the 
sharing model , role hierarchies, sharing rules. 
• These provides access to all the records created by any type of 
user. 
• ModifyAll gives ability to mass transfer , mass update, mass 
delete records. 
• ModifyAll gives access to approvals also to Accept or Reject.
Field Accessibility 
• The Sharing Controls of Salesforce provides a Field 
Accessibility which allows to view & modify the fields access 
from different aspects for a particular object. 
• View By Fields 
• View By Profiles 
• View By Record types
Delegating Data 
Administration 
• There are two ways to quickly delegate restricted data 
administration access: 
• Object-Level Permissions 
• Provides the all Object level access to other user which can then act 
as a delegated administrator. 
• Delegated Administration Group. 
• Creating a new non-admin i.e. delegated administration group with 
limited admin privileges which are rather than object settings. Like 
creating new user, modify user , reset passwords, access to selected 
objected provided by primary admin.
Accessing Records in Apex 
• While accessing the records or information of an custom 
object using SOQL queries will give you all the records access 
even if the user accessing it is not having the access to those 
records. 
• So at these conditions use the following type of syntax to 
classes to restrict the access as per the sharing rules 
Public with sharing class MyClassname{ 
}
Thank You

More Related Content

PPTX
Salesforce Development Best Practices
PPTX
Salesforce sharing and visibility Part 1
PDF
Getting started with Salesforce security
PPTX
Profiles and permission sets in salesforce
PDF
Apex Enterprise Patterns: Building Strong Foundations
PDF
Introducing salesforce shield - Paris Salesforce Developer Group - Oct 15
PPTX
Introduction to Apex for Developers
PDF
Introduction to Apex Triggers
Salesforce Development Best Practices
Salesforce sharing and visibility Part 1
Getting started with Salesforce security
Profiles and permission sets in salesforce
Apex Enterprise Patterns: Building Strong Foundations
Introducing salesforce shield - Paris Salesforce Developer Group - Oct 15
Introduction to Apex for Developers
Introduction to Apex Triggers

What's hot (20)

PPTX
Sharing and setting in salesforce
PPTX
Record sharing model in salesforce
PPTX
Salesforce admin training 1
PPTX
Profiles and permission sets
PPT
Security and Your Salesforce Org
PPT
Salesforce REST API
PDF
Setting up Security in Your Salesforce Instance
PDF
Introduction to the Salesforce Security Model
PDF
Salesforce Admin 201-certification Notes
PPT
Salesforce Security Model (Dmitry Goshko, Igor Haritonovich)
PPTX
Salesforce Integration Patterns
PPTX
Salesforce Security Best Practices for Every Admin
PPTX
Salesforce Integration Pattern Overview
PPTX
REST API in Salesforce
PDF
What Is Salesforce CRM, Editions, Licenses?
PPTX
Integrating with salesforce
ODP
Workflow in Salesforce
PDF
Champion Productivity with Service Cloud
PPTX
Episode 4 - Introduction to SOQL in Salesforce
PPTX
Introducing the Salesforce platform
Sharing and setting in salesforce
Record sharing model in salesforce
Salesforce admin training 1
Profiles and permission sets
Security and Your Salesforce Org
Salesforce REST API
Setting up Security in Your Salesforce Instance
Introduction to the Salesforce Security Model
Salesforce Admin 201-certification Notes
Salesforce Security Model (Dmitry Goshko, Igor Haritonovich)
Salesforce Integration Patterns
Salesforce Security Best Practices for Every Admin
Salesforce Integration Pattern Overview
REST API in Salesforce
What Is Salesforce CRM, Editions, Licenses?
Integrating with salesforce
Workflow in Salesforce
Champion Productivity with Service Cloud
Episode 4 - Introduction to SOQL in Salesforce
Introducing the Salesforce platform
Ad

Viewers also liked (14)

PDF
Managing the Role Hierarchy at Enterprise Scale
PPTX
Salesforce Security with Visibility, Control & Data Protection
PDF
How-to Create a 'Lock' record in Salesforce
PPT
Custom Links Buttons In Salesforce Com
PPTX
Data model in salesforce
PPTX
How to be a SalesFIERCE Salesforce Admin
PDF
Envisioning IC ITE: The Next Generation of Information Sharing
PPTX
Who Sees What When? Using Dynamic Sharing Rules To Manage Access To Records
PDF
12 Things Your Salesforce Admin Needs You to Know
PPTX
Trailhead Live Developer Workshop - Salesforce App Cloud
PPTX
Data Management for Salesforce Admins at Dreamforce 2016
PPTX
Secure Development on the Salesforce Platform - Part I
PPT
Advanced Platform Series - OAuth and Social Authentication
PPT
Salesforce Data Structures
Managing the Role Hierarchy at Enterprise Scale
Salesforce Security with Visibility, Control & Data Protection
How-to Create a 'Lock' record in Salesforce
Custom Links Buttons In Salesforce Com
Data model in salesforce
How to be a SalesFIERCE Salesforce Admin
Envisioning IC ITE: The Next Generation of Information Sharing
Who Sees What When? Using Dynamic Sharing Rules To Manage Access To Records
12 Things Your Salesforce Admin Needs You to Know
Trailhead Live Developer Workshop - Salesforce App Cloud
Data Management for Salesforce Admins at Dreamforce 2016
Secure Development on the Salesforce Platform - Part I
Advanced Platform Series - OAuth and Social Authentication
Salesforce Data Structures
Ad

Similar to Sharing and security in Salesforce (20)

PPTX
SFDC Database Security
PPTX
Advanced Apex Security Expert Tips and Best Practices (1).pptx
PDF
Salesforce Sharing and Security overview for new admins and devs
PDF
recordsharingmodelinsalesforce-170519074428.pdf
PPTX
Security Boundaries in Apex
PDF
Security Model in Salesforce | QR Solutions
PPTX
Review on Data Security.pptx
PPTX
Secure Coding: Field-level Security, CRUD, and Sharing
PPTX
Apex managed sharing
PDF
2020 07-22 fireside chat : Record Ownership Deep Dive
PDF
Secure Salesforce: CRUD / FLS / Sharing
PDF
Keeping it Simple with Permission Sets
PPTX
Salesforce Sharing Architecture
PPTX
Salesforce admin training 2
PPTX
Force.com security
PDF
ABCs of Security in the Cloud Webinar
PDF
Salesforce Miami User Group Event - WrapUp
PDF
2020 07-08 fireside chat sharing architecture
PDF
Salesforce Administrator | Security Implementation Guide 2014
PPTX
Adm 201 study group session 1 user interface kathy c
SFDC Database Security
Advanced Apex Security Expert Tips and Best Practices (1).pptx
Salesforce Sharing and Security overview for new admins and devs
recordsharingmodelinsalesforce-170519074428.pdf
Security Boundaries in Apex
Security Model in Salesforce | QR Solutions
Review on Data Security.pptx
Secure Coding: Field-level Security, CRUD, and Sharing
Apex managed sharing
2020 07-22 fireside chat : Record Ownership Deep Dive
Secure Salesforce: CRUD / FLS / Sharing
Keeping it Simple with Permission Sets
Salesforce Sharing Architecture
Salesforce admin training 2
Force.com security
ABCs of Security in the Cloud Webinar
Salesforce Miami User Group Event - WrapUp
2020 07-08 fireside chat sharing architecture
Salesforce Administrator | Security Implementation Guide 2014
Adm 201 study group session 1 user interface kathy c

Recently uploaded (20)

PPTX
Patient Appointment Booking in Odoo with online payment
PPTX
GSA Content Generator Crack (2025 Latest)
PDF
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
PDF
Microsoft Office 365 Crack Download Free
PDF
How Tridens DevSecOps Ensures Compliance, Security, and Agility
PDF
Topaz Photo AI Crack New Download (Latest 2025)
PDF
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
PDF
iTop VPN Crack Latest Version Full Key 2025
PDF
MCP Security Tutorial - Beginner to Advanced
PDF
Ableton Live Suite for MacOS Crack Full Download (Latest 2025)
PPTX
Weekly report ppt - harsh dattuprasad patel.pptx
PDF
Website Design Services for Small Businesses.pdf
DOCX
How to Use SharePoint as an ISO-Compliant Document Management System
PDF
Top 10 Software Development Trends to Watch in 2025 🚀.pdf
PDF
AI Guide for Business Growth - Arna Softech
PPTX
Tech Workshop Escape Room Tech Workshop
DOCX
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
PDF
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
PDF
Time Tracking Features That Teams and Organizations Actually Need
PDF
AI/ML Infra Meetup | Beyond S3's Basics: Architecting for AI-Native Data Access
Patient Appointment Booking in Odoo with online payment
GSA Content Generator Crack (2025 Latest)
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
Microsoft Office 365 Crack Download Free
How Tridens DevSecOps Ensures Compliance, Security, and Agility
Topaz Photo AI Crack New Download (Latest 2025)
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
iTop VPN Crack Latest Version Full Key 2025
MCP Security Tutorial - Beginner to Advanced
Ableton Live Suite for MacOS Crack Full Download (Latest 2025)
Weekly report ppt - harsh dattuprasad patel.pptx
Website Design Services for Small Businesses.pdf
How to Use SharePoint as an ISO-Compliant Document Management System
Top 10 Software Development Trends to Watch in 2025 🚀.pdf
AI Guide for Business Growth - Arna Softech
Tech Workshop Escape Room Tech Workshop
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
Time Tracking Features That Teams and Organizations Actually Need
AI/ML Infra Meetup | Beyond S3's Basics: Architecting for AI-Native Data Access

Sharing and security in Salesforce

  • 1. Sharing & Security Salesforce.com
  • 2. Why Cloud…?? • Bringing down computing costs in organization. • Freedom to access data anywhere from any of the devices. (Mobile, Tablets, Computers, etc.) • Centralized and agile. • More Secure than a scattered network. • No headache of maintaining servers.
  • 3. Sharing & Security Importance • First of all it is important that who's actually going to be using the app. • How much access they should have to the data. • Otherwise app will expose sensitive information. • So the security controls should be configured, and the access should be defined.
  • 4. Controlling Access To Objects Controlling the application access can be done by two ways which are actually the collection of Settings and Permissions • Profile : A mandatory field of user which provides settings and permission which are used for data access purpose. • Permission Sets : A non-mandatory field that provide extra access to objects, fields etc.
  • 5. Profiles What controls a Profile holds: • Object Permission • Field permissions (Field-level security) • User permissions • Tab settings • App settings • Apex class access • VisualForce page access • Page layouts • Record types • Login hours • Login IP ranges
  • 6. Standard Profiles • Read Only • Standard User • Marketing User • Contract Manager • Solution Manager • System Administrator Creating a new profile will ask you to refer existing profile or make a clone of it.
  • 7. Permission Sets What controls a Permission set holds: • Object permissions • Field permissions(Field Level Security) • User permissions • Tab settings • App settings • Apex class access • VisualForce page access
  • 8. License Concept behind the User, Profiles & Permission sets • While creating a user , profile or a permission set the license must be specified. • These licenses are having some accessibilities which are provided along with them. • The license of a user should match with the permission set we are applying to it. • The licenses of a user, its profile and the permission set that is being assigned to it, are the same.
  • 9. Comparing Profiles & Permission Sets • User can have only one Profile but can have many permission sets. • Profiles are having more permissions options than permission sets. Record type, Page layout, Login hours, Login IP ranges is missing from the permission set. • Permissions are mostly used for temporary purpose. • Profile are mandatory and used for minimum access. • Permission are not mandatory and always used to grant more access.
  • 10. Data Access Concepts • Object-Level Security : Preventing a user from seeing, creating, editing, or deleting any instance of a particular type of object. • A profile or a permission set can provide object-level security. • Defined using Tab settings and object permissions. • Field-Level Security : Preventing a user from seeing, editing, or deleting the value for a particular field on an object. • A profile or a permission set can provide Field-level security. • Provide Read and Edit options for fields. • Record-Level Security : Preventing a user for individual object records that he is allowed to see.
  • 11. Record-Level Security can be achieved by: • Organization-wide Defaults : Allow us to specify the baseline level of access that a user has in our organization. The access can be, • Private • Public Read-only • Public Read/Write Org-wide defaults do not sets the access levels for a child record of Master-detail Relationship. • Manual Sharing : Allows record owners to give read and edit permissions to users who might not have access to the record any other way.
  • 12. • Role Hierarchies : Allow us to make sure that a user above in role hierarchy will always have access to the same records as his or her subordinates. • Grant access using role hierarchies can be decided from Org-wide Defaults for custom objects. • Sharing Rule : Allow us to make automatic exceptions to organization-wide defaults for particular groups of users. • Allows to be based on owner of record & Based on criteria. • Share with Public Groups.
  • 13. Points to Remember about the Record-Level Securities : • A Record-Level Security is used to grant more access not to restrict access. So we can say Org-default as most restrictive among all the record level securities. • A record creator can not be changed but the owner of the record can be changed. • A record can also be shared using the Apex Managed Sharing.
  • 14. Displaying Field Values and Page Layouts According to Profiles • We can use the different page layouts for different profiles. • For that, what we need is the record type. • The record type created will be assigned with a new page layout created. • Afterwards page layouts access can be assigned through the Profiles. • For field access the page layouts can further be modified.
  • 15. Exploring ViewAll/ ModifyAll • The ViewAll and ModifyAll from the Profile ignores all the sharing model , role hierarchies, sharing rules. • These provides access to all the records created by any type of user. • ModifyAll gives ability to mass transfer , mass update, mass delete records. • ModifyAll gives access to approvals also to Accept or Reject.
  • 16. Field Accessibility • The Sharing Controls of Salesforce provides a Field Accessibility which allows to view & modify the fields access from different aspects for a particular object. • View By Fields • View By Profiles • View By Record types
  • 17. Delegating Data Administration • There are two ways to quickly delegate restricted data administration access: • Object-Level Permissions • Provides the all Object level access to other user which can then act as a delegated administrator. • Delegated Administration Group. • Creating a new non-admin i.e. delegated administration group with limited admin privileges which are rather than object settings. Like creating new user, modify user , reset passwords, access to selected objected provided by primary admin.
  • 18. Accessing Records in Apex • While accessing the records or information of an custom object using SOQL queries will give you all the records access even if the user accessing it is not having the access to those records. • So at these conditions use the following type of syntax to classes to restrict the access as per the sharing rules Public with sharing class MyClassname{ }