{New Utility} Record Privilege Checker for Dynamics CRM

Recently I had a requirement where our client’s support and maintenance team wanted a feature through which they can view the privileges for a record for all active users in the system. Ok, let me take a moment to explain here.

Suppose the support team wants to run a regular security check and identify what privilege does a specific user have on specific account records. You might be thinking that is that this hard? After all we can go to the user and identify the security roles of the user. And then determine what access privilege does the security role have on the account

Simple isn’t it? Well it is not. And specially with CRM 2016, a user might end up getting a specific privilege on record through any of the following.

  • Security roles
  • Sharing
  • Access teams
  • Owner team association
  • Hierarchical relationship.

It can be really complex depending on how your system is configured. Then what is the other way of finding out without user intervention. The customer did not want any external utility. They wanted something within CRM from where they could view the information.

So I developed a quick solution and then I thought why not share the community so that anybody in the future having the same requirement can benefit from this.

The tool is available for download for free at codeplex site – https://recordprivilegechecker.codeplex.com/releases/view/629363

 

Download the managed solution specific to your CRM version. Currently it supports

  • For CRM 2016 Version 8.1
  • For CRM 2016 Version 8.0
  • CRM 2015 Version

Once you install the managed solution, open any record form for any customizable entity. You should see a button called ‘Check User Access’ on the form.

image

Click on the button. Once you click on the button, a popup will show like the one below where you can view the privilege of all the active users on that particular record

image

 

And voila!,  it shows the privilege that each user has on the record. For Organization Owned entities it would show you the privilege as well.

image

 

Since ‘Assign’ and Share privileges are not valid for organization owned entities, you can see those privileges are blank.

The results might take some time to pop-up depending on the number of active users and access complexity in your environment.

And finally to round off, you can sort on the ‘FullName’ and ‘User Name’ columns. Also you have paging and searching to slice and dice your data.

image

 

Liked this tool? You can make a small donation at paypal account – debajit.prod@gmail.com. Your support and encouragement will help me to make many other tools in the future.

 

Till then you read one of my blog posts, happy CRM’ing.

{New Tool} Dynamics CRM – SharePoint Metadata Manager & Attachment Extractor

It’s been sometime I have written a blog and this is because me and some of my extremely talented team members were in neck deep work developing this new tool from the stable of www.XrmForYou.com

I am extremely delighted to share with you this wonderful tool which we have developed after carefully considering multiple feedbacks from our clients, from the community and understanding the pain points and limitations the users faces in OOB CRM & SharePoint integration. Thanks to my team members Sakthi(https://in.linkedin.com/in/sakthivadivel-kuppusamy-102b7718),  Rajesh (https://in.linkedin.com/in/rajesh-m-5296a910a) and Chandana (www.linkedin.com/in/chandana-kommuri-1b481848), without whose contributions this tool would not have been possible.

Here I will give a rough overview of the tool. For detailed documentation and video, please visit the products page – http://www.xrmforyou.com/products.html

For trial and demo, you can email at – info@xrmforyou.com

Sharing the video link here as well – https://www.youtube.com/watch?v=BIhsOD0gbew

So enough of words. What does the tool do? Well to summarize, the tool does the below for you.

But before I do so, one important point of note. OOB CRM SharePoint integration is great and we wanted to leverage that as much as possible. Hence for this tool to work, OOB CRM-SharePoint Configuration must be set-up. Once you are done with the two minutes set-up, keep on reading. If you are not sure on how to achieve the CRM-SharePoint integration, please refer to the link –

  • Allows you to create and edit Metadata related to files from CRM. This version allows up to five metadata fields per entity and also provides the option to restrict the metadata values to a specific set of values or free text.
  • Dynamic adding and removal of the SharePoint section on the form of an entity just through configuration page that comes with the tool. Also you can place the SharePoint section on multiple forms for the entity.
  • Upload up to five files at one go along with the option to enter metadata for each file.
  • Behaves in conformance with the security privileges of the user in CRM for the record on which the SharePoint section is being shown.

Not much clear? Then let’s see with screenshots here. I will go through each section here for the overview. Sit tight and get ready for the experience Smile

 

Metadata Management & Multiple Document Upload

The tools comes as a managed solution and once you install the solution, go to Settings –> Manage SharePoint Configurations.

image

The section above asks you to register a SharePoint user. Here you should enter the credentials of the user who has the privilege to create and edit metadata in SharePoint. Don’t worry about the password. It is encrypted and stored securely in CRM.

Once done the below section comes up.

image

Select an entity from the dropdown. Please note that only the entities which has been enabled for CRM-SharePoint integration OOB is being shown here. Select the entity you want to configure for. I select Opportunity from the list.

image

Check – ‘Enabled for embedded view’. This basically means you want to show the sharepoint section that comes with the tool in the opportunity forms. Select the form or forms on which you want the sharepoint section. I have selected ‘Opportunity’ Form.

image

Click on Save. System will show you a popup that the process has been initiated. The process has been kept asynchronous to actually improve the user experience. However you can see the status of the process from the ‘Sharepoint Triggers’ section of the menu.

image

image

image

Status of ‘Success’ indicates that the sharepoint section has been successfully placed in the Opportunity form. So far so great.

 

Now let’s go ahead and create some Metadata in Sharepoint for the Opportunity entity.

image

 

I will click on the ‘Add Icon’. And I get the form to enter new metadata.

image

 

Display Name – The display name in CRM

Name in Sharepoint – The name with which the Metadata is created in Sharepoint

Metadata Type – This is an important one. It basically gives you the flexibility to limit the metadata values to a restricted list or a free text when the user uploads a file. If you want to restrict the user to a list of specified values, then choose – ‘Map to Existing Values’. If you do this, it would ask you to select a global optionset item in the section – ‘Map Metadata Values To’. And when the user would be uploading a file, the values that the end-user would see are the values specified in the optionset. This gives you the option to dynamically add/ remove values by changing the optionset values.

If ‘Write-In’ option is selected, the user gets a free text to enter upto 255 chars.

Show In CRM – If you check it, the metadata would show up in CRM while you upload and also in the list.

I create two metadata.

  • Document Type – Mapped to global option set (Document Type)
  • Document Notes – A write-in metadata.

 

image

 

image

 

You have the option to edit the metadata as well and change metadata type.

image

 

You can add up to five metadata per entity.

 

All done in configuration? Well I have left one option unexplained and I will come back to that later.

Now lets go ahead and open an opportunity record.

You should see a section like this below.

image

This is a custom component that is being inserted in your form. We are not using the OOB UI for this.

If you observer carefully, apart from the regular columns like Name, Modified By, Modified On and Path, the two metadata fields – ‘Document Type’ & “Document Notes”. And Yes, this is Dynamic. The more metadata you add or delete, it will be reflecting it from the next time.

The first thing I do, is select ‘Upload’. Once you do that, the user would be presented with a popup from where the user can upload up to five files with the associated metadata.

image

I upload two files. And select the appropriate metadata. And here you can see the difference between Mapped Metadata and Write-In Metadata.

image

 

Once I upload, the files are shown in the grid along with their metadata as well.

image

 

You have an option of editing these files and overwriting the file content and metadata, keeping the file name same. For that simply click on the ‘Edit’ Icon at the end of each row.

image

 

The next option that I will explain here is the ‘New’ menu. Please note that this menu is only available in case of integration between CRM Online & Sharepoint Online. For on-premise environments, this menu won’t be available. Using this menu, you can create any word/ excel/ ppt/ one note file as as soon as the file is created, it will open in office online where you can edit the file and save it.

image

 

image

image

image

 

You have the option of deleting more than one file.

image

 

Clicking on “Open Location” link, you can open the folder in sharepoint where documents are stored.

image

 

You have the option to search as well, which behaves exactly similar to the search in the OOB SharePoint – CRM configuration. I search for *error. The search gets performed in SharePoint just like OOB.

image

image

 

Attachement Extractor functionality:

Another feature the tool provides is the option to automatically move your attachment uploaded to the notes section to Sharepoint. Additionally you get an option to delete the document in CRM once uploaded to Sharepoint. So let’s explore that.

image

  • Move attachments to Sharepoint when uploaded in CRM :
  • This is the setting by which you can configure to automatically move attachments from Dynamics CRM to sharepoint the moment the file is attached to the records of the entity in CRM.
    For Example : If the above setting is enabled for “Opportunity” entity then whenever an user attach an attachment for any account record then that attachment will be automatically move to SharePoint and the file will be showed in the SharePoint attachment section on the form(s) of the entity.

    Once the above setting is enabled then there will be another setting “Delete attachments in CRM once moved to CRM” available to configure.

  • Delete attachments in CRM once moved to CRM : This is the setting by which you can configure to automatically delete the attachments from Dynamics CRM once the file attachment is moved to SharePoint.

Now coming to opportunity, I have uploaded a file in the Notes section of my opportunity record.

image

 

Since I have chosen the option to ‘Migrate’, the document will move to sharepoint and the record would be deleted in CRM after successful upload to Sharepoint.

image

image

 

Conformance with CRM Security:

The sharepoint section provided by the tool behaves in conformance with the privileges the user have on the record.

For e.g – If the logged in user does not have delete privilege in CRM for the record, the user would not be able to delete documents for the record. The delete option would not be available to the end user.

In the screenshot below, I have logged in as a user who does not have delete and write privilege on the record and hence as you can see, there are no options available in the Sharepoint section as well to delete and edit the documents associated with the record.  All the user can do is download the files by clicking on the same.

image

 

Hope you have liked this tool.

For detailed documentation and video, please visit our products page – http://www.xrmforyou.com/products.html

For trial and demo, please write to info@xrmforyou.com