Portal Management Tips


I’ve moved house so unfortunately I haven’t been able to make a video for this post!

I wanted to share two tips that help with managing Microsoft Dynamics Portals.

1 – Keep you administrator web role up to date

Portal security can sometimes seem a bit backwards. You create an entity permission. You give that permission to a particular web role. Then you enable entity permissions on a web form step or entity form. It works first time and you’re done (haha…). Except, especially if you are like me, you have probably forgotten to give the entity permission to the administrator web role. In a few months you will log in, need to fix something urgently, give yourself the administrator web role and not have access.

On the agile project I am working on I added to our definition of done ‘if you create an entity permission the task is only done when it is associated with the administrator web role’. Then I forgot to do it myself.

After thinking about it for a while, I created a simple process that associates new entity permissions with the administrator web role. On create of an entity permission you can trigger whatever N:N custom workflow action you would like so the entity permission is automatically associated with the administrator web role. I used North52. Please see below a screenshot.

2 – Don’t use environment specific urls!

This might not be brand new for someone who is familiar with CMS but its still a good reminder. All over the portal there is the opportunity to put instruction text, success messages etc. In these fields you can insert HTML that allows hyperlinks. Its really common for these hyperlinks to refer to other portal pages in your environment. If you run multiple portals it can become excruciating to update all the references to different portals as you move through your software development life cycle. Thankfully the portal allows you to put partial href values in hyper links.

For example in the out of the box customer self-service portal you get a support page where a customer can see all their cases. A nice touch is to add a link in the success message of any forms which creates cases to point the customer back to this page. At one point I would have ‘hard coded’ this link. Something along the lines of:

<a href="www.portal_name{environment_specific_tag}.microsoftcrmportals.com/support/">My Support</a>

A much better way to deal with this would be to use:

<a href="../support">My Support</a>

The ‘generic’ link makes it much easier to move the record between environments. HTML is smart enough to figure out the rest.

Hope these tips are useful!

Leave a Reply

Your email address will not be published. Required fields are marked *