Skip to main content

Posts

Showing posts with the label Security

Quick Tips: All about sending emails from Salesforce (with advanced features)

Emails are still a very essential part of our day to day communication. Be it an internal communication within the organization, or across organizations or between customers and organization, emails are one of the key communication mechanism (let's not debate on pros and cons here). Quite obviously, Salesforce provides various options to send emails to internal and external recipients. In this post I'm trying to cover all the essential points (briefly) involved in sending emails from Salesforce. Defining Email Templates First and most important aspect regarding emails is ability to create email templates within Salesforce. This is without doubt one of the most used aspect related to sending emails. Email templates help administrator create pre-defined email templates within Salesforce. This helps in providing business approved and verified templates to system and users. As a result, all outgoing communications are consistent. Also, any correction/ improvement incorporated ...

Quick Tips: Custom security settings (When to use Salesforce Custom Permissions?)

How often did each one of us get into a situation where we have to create custom security rules? For e.g. Call center agents should not be able to give credits. Only Supervisors or Finance team can give credits Only Finance and Account Manager can generate invoice. And the most trivial way to achieve it is something like if(profileName == 'Supervisor || profileName == 'Finance'){      // business logic to give credits } else{     //throw error message } Now, one of the best ways to handle this is by using "Custom Permissions". It allows you to leverage Salesforce security infrastructure and loosely bind that to your custom logic. This helps in making your code scalable and robust. You'll learn that below. What are Custom Permissions? Custom Permissions was made GA in Summer '15 (ver 34.0). It is a unique way of creating a custom permission which is required/ to be used by your custom logic. For e.g. in above example, if we create ...

Sneak Peek: Encrypted Custom Fields

What? Alphanumeric fields which would contain data in encrypted form. Mostly to be used in case of government regulations, as they have processing overhead and certain limitations for e.g. these fields cannot be unique, indexed or have default values. Also, there is a limit of 175 characters. Where? Custom encrypted fields can be be used in various applications and can be displayed on page layouts and can be even included for validations via validation rules and apex code. Why? Certain business needs or government regulations require certain data to be stored in encrypted state and displayed in masked form. For e.g. Social security numbers or credit card numbers. Salesforce makes it easy to achieve it via Custom encrypted fields.  How? Custom encrypted fields can be created as just another custom field with type selected as " Text (Encrypted) ". Master Encryption key key to be used for data encryption can be managed via " Certificate and Key Management " und...

Sneak Peek: Salesforce Permission Sets

With permission sets available for some time now, there have been lot of discussions around what is real use of permission sets, what they are capable of, when to use them and when to stay away from them. I am hereby trying to put in some views What? A Permission set is a configuration based mechanism to provide additional capabilities to users, on a temporary basis. It can be viewed as a subset of Profile, wherein it has similar capabilities to define security permissions, but has few lesser options. Where? Permission sets should be used primarily for temporary basis, wherein the access is to be provided for shorter time duration and the access can be removed later.  It can however be used to provide additional access to certain users, as compared to other users using same profile. But, in this case, usage of permission sets is elongated, its suggested to rather create a new profile. Why? It provides a very flexible and easy approach to give additional permis...