We'd like to build a web application based on force.com Sites and Customer Portal Licenses to have authenticated named users.

The data model consist of some custom objects. Now the end users should be able to access a certain amount of data read only (common data), and should be able to modify all records they create themselves.

Is that possible? Are the sharing mechanisms as flexible for portal users as for platform users? We would have a real problem if users could only access the data they own.

2 Answers 2


The flexibility of the sharing model much depends on which licenses you are using. If you are using full Customer Portal licenses, then these users will have roles and participate in sharing rules much as regular users do (although they appear in a fixed place in the role hierarchy, under the owner of the account that their user is associated with).

If you are using High Volume (aka Service Cloud Licenses), then these users don't have roles and don't participate in the sharing rules (hence they are much cheaper than customer portal licenses). There are sharing sets available for the high volume licenses, but these are based on profile require a lookup on the record to be shared to either the account or contact associated with the high volume user, so they really aren't that flexible.

As you are using Force.com sites, you are in Visualforce land, so if you are using custom/extension controllers you can decorate your class with the 'without sharing' keywords - this ignores the sharing restrictions of the currently logged in user so would allow you to provide access to common data regardless of the user's actual access.

  • hey bob thanks for your reply, that's exactly what i wanted to read :-) we'll probably have a license called "Customer Portal - Enterprise Admin". this should definitely provide what i would call the small role hierarchy per account. i think this and/or the option to use "without sharing" will help to implement what we need. thanks! any other things to consider when implementing a web application on force.com sites?
    – h9nry
    Oct 15, 2012 at 15:07
  • Definitely use the composition template functionality from Visualforce - this allows you to place the repeated 'boilerplate' header/footer stuff in a single place. Oct 15, 2012 at 15:14

You can use high volume portal license for this and sharing sets have to be created and this controls the sharing model.

Documentation link is here


Here is one more documentation for how to grant access to records using high volume portal licences


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .