While the Dynamics 365 Portal product offers flexibility in many areas, unfortunately the user registration process is not one of them. If you’re looking to add some fields to the form the user fills out when registering for your Portal, you’ll quickly find there is no simple way to do that. In this series, I’ll provide a different approach that might suit your needs if a custom user registration experience is required for your implementation.
The out-of-the-box experience revolves around creating a contact, without really any details associated with it. Whether you’re using local authentication or an external identity, all you really need to provide is an email address and your login info. Once logged in, you are redirected to your profile page, but there is no out-of-the-box way to enforce that someone fills out the rest of their profile before leaving that page.
There is no out-of-the-box way to customize the form that you see when registering – you can’t easily add fields to capture their name, address, etc. This means you could end up with a lot of blank contacts if users register but never fill out their profile.
Being able to customize the registration process is a question that comes up frequently on the Dynamics 365 Community Forums – and people have come up with some creative solutions.
Another option is to essentially hide all portal functionality until users fill out the required information. This can be done by waiting to assign Web Roles to users until after they’ve filled in those fields (and hiding all functionality behind a web role that isn’t just Authenticated Users). This is the technique employed by the out-of-the-box Partner Portal.
Or, if you’re going to go down the Companion App road, you can create the entire registration form from scratch. However, the challenge with this is properly handling the authentication pieces. If you’re using local authentication, there are some workflows that can help with properly setting the password for a user (also, keep in mind that local authentication is deprecated, so perhaps give Azure AD B2C a try). If you’re using an external identity provider, it may be possible to reverse engineer how to create the necessary records in Dynamics, but it can be a bit tricky, especially if it’s your first time.
I’m going to present another option here, and then in subsequent posts I’ll provide more details on how to make it work.
The option I’m going to detail in this series requires no coding skills – it can be accomplished completely through configuration (although I might use a bit of code at the end to clean up a few experiences, but it’s not required to get it working). At a high level, the steps are:
By following those steps, you can create your own custom registration form without writing a line of code. There are a few other benefits to this technique that I’ll also get into.