Data protection

How to Protect Sensitive Data From Prying Eyes in Dynamics CRM

Imagine you’re a Microsoft Dynamics CRM user and your usual work day involves dealing with leads, opportunities, orders, and salaries. All of this is sensitive data that needs to be protected. Maybe you work in an open-cubicle environment where people can stop by your desk unannounced at any time. Or maybe you travel often and work on a plane, train, or in a coffee shop. Do you remember to close your browser each and every time you’re surrounded by prying eyes in order to protect that information? How can you be productive in that type of environment?

The Solution

After a bit of brainstorming followed by a deep dive into business processes, we came up with a customized solution to shield Dynamics CRM views from prying eyes. We call it Blur Effect UI Protection and here’s what it looks like:

D:\Work\myDocumentation\_iTechArt\Promotion\Dynamics\blur-view.gif

Sensitive information is blurred out but can be easily accessed by hovering over the hidden field.

Of course, we could have hidden secure fields completely from views. But then, you would have to open each field individually which would take more time and would not be very efficient for your workflow.

Implementation

This hack can be implemented in a very short period of time (by skilled developer of course.) It will require CRM customization expertise as well as JavaScript knowledge. If you don’t have these skills, you can skip this section and go directly to Downloads .

Here’s a quick tour through view customization:

  • Create a separate solution for your customizations and add the entities you want “blur effect” to be applied to.
  • Create JS with content as below and upload it as JS WebResource to CRM: 1
  • Download and install Ribbon Workbench
  • Using Ribbon Workbench, add a new EnableRule for any button in view of required entity. It can be an existing button or a new one.
  • Use the “Custom JavaScript Rule,” which will be executed on view to check if the button is enabled. Besides check-for-enable code, you can also add any other required logic (blur effect logic in our case).
  • Map the EnableRule to our JavaScript function that will apply “blur effect” (doBlurView in our sample).
  • Publish the customization.

Note that this is just a sample showing core logic. JavaScript allows you to write anything you want and interact with CRM in a lot of different scenarios:

  • Conditional formatting
  • Advanced data protection
  • Loading data from other sources
  • Advanced UI controls
  • Etc.

Pros & Cons

Pros:

  • Solves requested business issue
  • Easy to implement and support
  • Can be customized to meet other business requirements
  • Can be provided as solution
  • Applicable to CRM 2011+

Cons:

  • Approach is not official (there is no other OOB way unfortunately)
  • Blur is supported only by modern browsers (not IE)

Downloads

Request complete solution

by Sergey Shiroky