Someone asked me why the System user had the word disabled in brackets in the plugin registration tool when editing plugins and can we I still use it.
I have set plugins to run as SYSTEM but I couldn’t remember if the SYSTEM user had disabled in it. I fired up the plugin registration tool, selected a plugin, clicked the Run in User’s Context and found this
I wasn’t sure whether I should be worried about the disabled or not, had it always been there?
In this example the CRM developer was setting a plugin to run as the SYSTEM user because the plugin need to run with more security privildges than the calling user.
To learn about Impersonation and plugins read my blog post
CRM 2015 – Understanding impersonation in plugins and knowing when to use it
What is the SYSTEM user
My knowledge of the SYSTEM user is it’s a super super in built user which you cannot see inside CRM in any of the views, the SYSTEM user won’t appear in disabled or enable user views inside CRM.
SYSTEM user is used by plugins, workflows to run with elevated privileges and when the user updates any records you will see SYSTEM.
Gonzalo Ruiz has written a great blog post on the SYSTEM and INTEGRATION
Explaining the built-in SYSTEM and INTEGRATION users
The blog post has a few interesting points to consider
- Nobody can log in CRM as either of these 2 users.
- These users are always on the root business unit.
- No security applies to these users (any action is allowed when executing as SYSTEM or INTEGRATION), all security validations are bypassed.
I’m guessing the SYSTEM user shows this SYSTEM (disabled) to indicate the user is disabled from user CRM as a general user.
Why is named SYSTEM (disabled)?
SYSTEM (disabled) lets the CRM developer know they are selecting the special SYSTEM user and not a user created user who could also have the name SYSTEM.
I did check some other CRM instances (CRM 2011, CRM 2013 and CRM 2015) to see if SYSTEM always had SYSTEM (disabled) and in the three instances I looked at all had the words disabled in brackets after the SYSTEM user.
I’m not sure labelling the system user as disabled is the best idea because it caused concern we had somehow disabled the SYSTEM user or maybe we shouldn’t select it because it was disabled.
It seems it’s just Microsoft Dynamics CRM having a quirky way to indicate the SYSTEM user is special and not to be confused with other non super users (surely there is a better way)
Filed under: CRM 2011, CRM 2013, CRM 2015, plugins
