+ Start a Discussion

Security Based on Record Types

We are in the process of trying to get our security in place. Everything is going well with the exception of trying to implement security in our accounts and contacts. You see we utilize record types and we need to control access to records based on that record type.

For Accounts we have
- Clients
- Respondents
- Organizations

and we have the same set of record types for contacts. We need to set different access to these record types based on profile.


For example, Profile1 should have read only access to Organizations, read, modify and create on Respondents, and no access what so ever to Clients. Profile2 might have have read and edit access to all of those. From what I can find there isn't an easy way to really set up security based on the record type of a record. Am I missing it, or is there a work around that is viable? Please let me know. Thank you!


Perhaps Territory Management is what you're looking for?



Nice out of the box thought on that. I have never really used territory managment (always used Salesforce more for its database and case managment type features, not so much sales stuff) so I hadn't thought about it. I'll do some reading, but so far looks like it might fit. It says you can set up territories based on custom fields and such, do you know by chance if they can be set up based on the recordtypeid field, or would I have to set up a custom field that changes based on the recordtypeid. Doesn't matter too much either way I guess. Again, thanks, this looks like just what I was looking for.

Unfortunately territory management does not support record types as a criterion for assignment, and only supports Accounts and Opportunities right now. However, there may be a way you can accomplish your goals with our Criteria Based Sharing feature, which is in pilot mode, but covers Custom Objects (which I believe includes the ones you listed). Right now Criteria Based Sharing also does not support Record Types directly, but there is a potential hack: you can use a workflow rule on the object to copy the value of the Record Type Name into a separate Text field, and then use the text field value as your critierion for the Criterial Based Sharing rule. I do have to warn you that this solution is temporary (we are planninig direct support for record types when Criteria Based Sharing goes GA), and more importantly will only work reliably if your record types are very stable. If you delete them, or change their names, the Criteria Based Sharing rules will become invalid. But if your record types are stable, this may be a solution for you until we get to GA.


If you want to try Criteria Based Sharing, ask your support person to file an R&D Programs request at: