[SalesForce] Community: Sharing Sets and Sharing Records – High volume

Sharing Sets

Sharing sets are one of the best ways to grant portal / community users access to records that belong to their account. The sharing is based on lookups to accounts or contacts.

Question

  • What are the benefits of using sharing sets over sharing rules?
  • Is it true that sharing sets do not create "_share" records in the database?

Best Answer

Sharing Sets benefits are that they permit sharing of records to High Volume Community licences that cannot use Sharing Rules or Apex Sharing.

Sharing Sets cannot be used as an alternative to Sharing Rules as they are not available to licence types that can use the rules such as Customer Community Plus or Partner Community users.

An advantage of Sharing Sets over Sharing Rules can be that they are easier to define as it is possible to setup a sharing set with criteria like

'User:Account' = 'Case:Account'

While for Sharing Rules it is necessary to create a separate sharing rule for each Customer or Partner Organisation (which will have its own Role) to share records owned by users with that Role with the other users with that Role, and say with cases if the ownership changes to an internal user or queue then access to the case could be lost, unlike the Sharing Set. This can of course be worked round by using Groups, but that adds a layer of maintenance to the SF Organisation setup.

Sharing sets do not seem to create a record in the sharing tables for the database as I have tried retrieving them using Data Loader and cannot find an entry that corresponds to the profile or other information related to the high volume licence types.