Security In Salesforce
Introduction to Security Model in Salesforce:
Managing access control using Salesforce.com’s security:
Before kicking off any enterprise application, we must first consider the users who will be using our application. In any type of business organization there are many users who will be using application with many different aspect of the Force.com.
For instance, in a large enterprise application, there will be service center users who use cases objects and solution objects regularly. They should not be able to access Lead object. In a same way, the accounts Managers do not need access to all cases, but only cases for their account.
In our application Warehouse, the Merchandiser has complete access to the entire activity related to Merchandise, but the Salesman who are dealing with the sales process of LineItem(Products) only have access to LineItem and Invoice only.
There should also be a thought as to which users can customize this application and what parts of the systems they should be given access to customize/modify.
To sum up, we need to think of the following factors before starting to develop the application on Force.com for our client:
- Which users will be using what parts of the application?
- Is there sensitive data that need special privileges?
- Is there any data restriction, such as should peers see each other’s data?
- Who are the power users who can customize this app?
Salesforce basically supports three types of Security :
- Object Level Security: Using object permissions, you can prevent a user from seeing, creating, editing, or deleting any record of a particular object type, such as a lead or opportunity. Object permissions enable us to hide tabs and objects from particular users. We can specify object permissions in permission sets and profiles. Permission sets and profiles are collections of settings and permissions which determines what a user can perform in the application.
- Field Level Security: When we want users to access an object, but limit their access to individual fields in that object. Field-level security—or field permissions—control whether a user can view, edit, and delete the value for a particular field on an object.
- Record Level Security: You can configure Record Level Security to manage access for the records . It enables us to provide access for intended records to Users out off all records (which are created by other users)