Prevent the Panic: Blocking Unmanaged Customizations in Your production Power Platform Environment

Imagine this: you’re in the middle of a crucial project, and someone accidentally makes a customization directly in the production environment, creating an unmanaged layer. Panic sets in as you scramble to mitigate potential issues. This scenario is a nightmare for any Power Platform administrator, but the good news is it can be prevented. By blocking unmanaged customizations, you can ensure that only managed and controlled changes are deployed in your production environment. Here’s a step-by-step guide on how to block unmanaged customizations in Power Platform.

Why Block Unmanaged Customizations?

Unmanaged customizations in a production environment can lead to several problems:

  • Unpredictable Behavior: Unmanaged layers can override managed solutions, leading to unexpected behavior and bugs.
  • Difficult to Track: Changes made directly in production are harder to track and audit.
  • Maintenance Challenges: It complicates the process of updates and maintenance, as unmanaged customizations need to be manually reconciled with new versions of managed solutions.

Step-by-Step Guide to Blocking Unmanaged Customizations

Step 1: Understand the Default Solution Layer

In Power Platform, unmanaged customizations are applied to the default solution layer. This layer is automatically created when customizations are made directly in an environment without using a managed solution.

Step 2: Enable the “Block Unmanaged Customizations” Setting

  1. Navigate to the Power Platform Admin Center
  2. Select Your Environment
    • From the list of environments, select the one you want to configure.
  3. Access Environment Settings
    • Click on Settings from the environment’s overview page.
  4. Locate the ‘Block Unmanaged Customizations’ Option
    • In the settings menu, navigate to Features.
    • Find the Block Unmanaged Customizations option and toggle it on.

Step 3: Verify Configuration

After enabling the setting, it’s crucial to verify that the configuration is active:

  • Test in Sandbox Environment: Before applying changes in production, test the settings in a sandbox environment to ensure it behaves as expected.
  • I tried creating a unmanaged solution: it was able to create, but if you try adding new customization you are presented with a not so friendly error.

Limitations:

The feature does have some limitations, primarily with built in Dynamics 365 functionality which creates an unmanaged layer, like automatic record creation rules, install and enabling of sales accelerator, Connected field service Journey creations, dataflows creation etc.

I personally don’t see some of it as I prefer installing them before locking the environment down. the settings could be disabled to complete the installs and upgrade and reenabled.

You can go through the detailed list of limitations at the official Microsoft documentation here.

Best Practices for Managing Customizations

  1. Use Managed Solutions: Always deploy changes through managed solutions. This approach ensures that all customizations are version-controlled and easily maintainable.
  2. Implement ALM Processes: Adopt Application Lifecycle Management (ALM) practices to manage and deploy changes across environments. Tools like Azure DevOps can automate these processes.
  3. Regular Audits: Conduct regular audits of your environments to ensure compliance with customization policies.
  4. Training and Awareness: Educate your team about the importance of managed solutions and the risks associated with unmanaged customizations.

Thank you Josh and Lakshay for sharing this with me. Please let me know what you think about this feature.

Happy customizing!

Leave a Reply

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