The lockdownDeployableUnits
command sets an internal flag in the Rhino management database to disable installation and uninstallation of deployable units.
Once invoked it is impossible for a Rhino administrator to unlock the install and uninstall operations without reinitialising the management database while the cluster is offline.
Use this command when preparing a deployment image that should be resistant to alteration by the operator of the system.
The primary purpose of the 'lockdownDeployableUnits' command is to create sealed deployment images that are resistant to tampering however it is of limited utility if the user managing the system has direct access to the underlying operating system. The principal benefits are:
-
To block people with access to user management tools from modifying the set of deployed binary components.
-
To make altering the deployment state more difficult and easier to detect - cluster restarts are highly visible and disruptive to operations.
-
To provide a simple process for locking deployments that does not require control of the deployed environment.
-
To support other security controls such read-only deployment images and any future integrity checks such as code signing.
To lock the deployment state, use the following rhino-console command or related MBean operation.
Console command: lockdowndeployableunits
Command |
lockdowndeployableunits [-force] Description Lock down the Rhino deployment binaries. Deployable units cannot be installed or uninstalled nor namespaces created or remove once lockdown has been enabled. Lockdown cannot be reversed except by completely reinitialising the management database and reinstalling the deployable units. The optional -force argument prevents the command from prompting for confirmation before the lockdown occurs. |
---|
MBean operation: disableDeployableUnitModification
MBean |
|
---|---|
SLEE-defined |
public void disableDeployableUnitModification() throws ConfigurationException; Locks code deployment in Rhino (installation and uninstallation of deployable units), and namespace creation and removal. |
MBean operation: PlatformRestrictionsConfigManagementMBean
MBean |
|
---|---|
SLEE-defined |
public boolean isDeployableUnitModificationDisabled() throws ConfigurationException; Checks the deployment lockdown state of Rhino. Returns true if code deployment and namespace management are locked. |