salesforce_security_impl_guide
salesforce_security_impl_guide
salesforce_security_impl_guide
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Security Overview<br />
Auditing<br />
• Role hierarchy—Once you’ve specified organization-wide sharing settings, the first way you can give wider access to records is<br />
with a role hierarchy. Similar to an organization chart, a role hierarchy represents a level of data access that a user or group of<br />
users needs. The role hierarchy ensures that users higher in the hierarchy always have access to the same data as people lower<br />
in their hierarchy, regardless of the organization-wide default settings. Role hierarchies don’t have to match your organization<br />
chart exactly. Instead, each role in the hierarchy should represent a level of data access that a user or group of users needs.<br />
You can also use a territory hierarchy to share access to records. A territory hierarchy grants users access to records based on<br />
criteria such as zip code, industry, revenue, or a custom field that is relevant to your business. For example, you could create a<br />
territory hierarchy in which a user with the “North America” role has access to different data than users with the “Canada” and<br />
“United States” roles.<br />
Note: Although it’s easy to confuse permission sets and profiles with roles, they control two very different things. Permission<br />
sets and profiles control a user’s object and field access permissions. Roles primarily control a user’s record-level access<br />
through role hierarchy and sharing rules.<br />
• Sharing rules—Sharing rules let you make automatic exceptions to organization-wide sharing settings for particular sets of users,<br />
to give them access to records they don’t own or can’t normally see. Sharing rules, like role hierarchies, are only used to give<br />
additional users access to records—they can’t be stricter than your organization-wide default settings.<br />
• Manual sharing—Sometimes it’s impossible to define a consistent group of users who need access to a particular set of records.<br />
In those situations, record owners can use manual sharing to give read and edit permissions to users who would not have access<br />
to the record any other way. Although manual sharing isn’t automated like organization-wide sharing settings, role hierarchies,<br />
or sharing rules, it gives record owners the flexibility to share particular records with users that need to see them.<br />
• Apex managed sharing—If sharing rules and manual sharing don’t give you the control you need, you can use Apex managed<br />
sharing. Apex managed sharing allows developers to programmatically share custom objects. When you use Apex managed<br />
sharing to share a custom object, only users with the “Modify All Data” permission can add or change the sharing on the custom<br />
object's record, and the sharing access is maintained across record owner changes.<br />
Auditing<br />
Auditing features do not secure your organization by themselves, but these features provide information about usage of the system,<br />
which can be critical in diagnosing potential or real <strong>security</strong> issues. It is important that someone in your organization perform regular<br />
audits to detect potential abuse. The other <strong>security</strong> features provided by Salesforce are preventative. To verify that your system is actually<br />
secure, you should perform audits to monitor for unexpected changes or usage trends.<br />
Auditing features include:<br />
Record Modification Fields<br />
All objects include fields to store the name of the user who created the record and who last modified the record. This provides some<br />
basic auditing information.<br />
Login History<br />
You can review a list of successful and failed login attempts to your organization for the past six months. See Monitoring Login<br />
History on page 92.<br />
Field History Tracking<br />
You can also enable auditing for individual fields, which will automatically track any changes in the values of selected fields. Although<br />
auditing is available for all custom objects, only some standard objects allow field-level auditing. See Tracking Field History on page<br />
93.<br />
Setup Audit Trail<br />
Administrators can also view a Setup Audit Trail, which logs when modifications are made to your organization’s configuration. See<br />
Monitoring Setup Changes on page 96.<br />
9