Potential Breaking Change Notification

In AMP 2.4.7 - we’re introducing a potentially breaking change to the settings and provisioning systems.

What is being impacted

  • Permissions Management
  • Deployment Templates
  • External API access

The reason for this change is to fix an inconsistency in how AMP handles settings.

On the command line, AMP uses field names for settings. For example:

LocalFileBackupPlugin.Limits.MaxTotalSizeMB

However for API calls and the permissions system, AMP used the type names, which resulted in:

LocalFileBackupPlugin.BackupLimits.MaxTotalSizeMB

And both of these pointed to the exact same setting.

After these changes, the field name version of the node (The first one) will be used globally across AMP. Whether it’s on the command line, the API or in provisioning settings.

Why are these changes being made?

Having different nodes for settings depending on how you used them was resulting in a lot of inconsistency. The node changed depending on whether you were setting a setting via the API, via a deployment template, or via a command line flag. Increasing complexity and causing maintenance difficulties.

These changes will make parts of AMPs design cleaner, easier to maintain, and easier for developers and advanced users to work with.

What is the potential impact?

After this update, AMP will attempt to automatically correct as much of the old data as is reasonably possible. However it’s possible that some settings may not transfer over properly due to the use of wildcards or other modifiers.

The system with the biggest potential impact is the permissions system. A failure to migrate everything could cause users or roles to be denied access to settings that they previously had access to if they were granted fine-grain permissions on a per-section or per-setting basis. This change will not cause users to gain access to things they did not previously have access to.

Deployment Templates should be okay as-is as they already use the correct node format.

Any tools/utilities that use AMPs API to read/modify settings will need to be updated to use the new node format. This now exactly matches the format AMP uses in its config files (FileName.Section.Setting).

What do I need to do?

  • Make sure you have a backup of your ADS permissions contained in the UserData.json and RoleData.json files.
  • Examine your users/roles permissions to check for any unexpected permissions losses and manually correct them if needed.
  • Update any external tools that communicate with AMP to use the new permissions nodes.