11.01.2015 Views

salesforce_security_impl_guide

salesforce_security_impl_guide

salesforce_security_impl_guide

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!