Use Community-Specific Sharing
Sharing Records with High-Volume Portals and Communities
So far, for our partners, we’ve used various sharing capabilities available for all Salesforce users. However, there are specific sharing capabilities available only for external users. Let’s start with sharing sets.
Let’s take a quick look at a video that describes how community-specific sharing works.
We create sharing sets specifically for high-volume portals and communities to make it easier for a large number of external users to see records they need to access. Sharing sets use profiles to give record access to a group of users, unlike sharing rules, which use roles and public groups.
The sharing mechanism used in sharing sets is called access mapping. A sharing set is essentially a container of access mappings.
- Using a direct lookup on the record you want to share, such as an account associated to a case.
- Using an indirect lookup on the record you want to share, such as the account associated to an asset which is associated to a case.
Let’s take a look at these sharing sets and access mappings in action.
Working with Sharing Sets
In addition to setting up a partner portal, Ursa Major has plans to set up a customer-facing help center in the future. They plan to have several thousand members in the next couple of years.
A big part of the help center will be case creation: customers can create cases for issues they’re having with their solar panel system.
If you remember, in an earlier step we set the external org-wide default on cases to private. That means every case owner can see only his or her own case.
But Ursa Major wants to give customer users belonging to the same account access to all cases in the account. To share case data, Maria creates a sharing set with access mapping on the case object. The access mapping grants read access to case records where the user account matches the case account. As a result, users within the same account can see each other’s cases.
- From Setup, enter Communities Settings in the Quick Find box, then select Communities Settings.
- In the Sharing Sets related list, click New.
- Label: Share Customer Cases
- Sharing Set Name: [autopopulates]
- Select Customer Community User profile (this is the profile you share cases with).
- Select Case. The Available Objects list excludes:
- Objects with an org-wide sharing setting of Public Read/Write
- Custom objects that don’t have an account or contact lookup field
- In the Configure Access section, click Set Up next to Case to configure access for the selected profiles.
- Grant access based on an account lookup:
- Select Account from the User dropdown menu.
- Select Account from the Target Object dropdown menu field to determine lookup on the target object.
- Select Read Only for access.
- Click Update.
- Click Save.
Now, anytime you add customer users to the account, they automagically have access to all other customer cases within the same account.
Let’s create a customer user in our org. (We’re asking you to take this extra step so we can check to make sure you’ve done the access mapping correctly.)
- From the App Launcher, select Accounts.
- Select the All Accounts list view.
- Click Burlington Textiles Corp of America.
- Click Jack Rogers from the contact related list.
- Click and select Enable Customer User.
- Change the following in the New User detail page.
- Email: [Enter your email address so you can get login information for your newly created users.]
- Username: [unique username in an email format]
- User License: Customer Community
- Profile: Customer Community User
- Select the Generate new password and notify user immediately checkbox.
- Click Save.