Using custom plugins in Airlock IAM

This article explains how to use and configure custom plugins in an Airlock IAM installation.

This article is not about writing custom plugins.Further information can be found in the IAM Custom Development Guide. You can request the latest version of the IAM Custom Development Guide by opening a support ticket. See (ergon.ch) Techzone - Airlock support process) for more information.

Installation

  1. To install your custom plugins, do the following:
  2. Copy the jar file (e.g. my-medusa-plugins-1.0.14.jar) to either of the two following folders within the Airlock IAM installation (replace older versions of the same libraries):
    • instances/common/libs - if the custom plugins should be available for all instances
    • instances/<instance-name>/libs - if the custom plugins should only be available for a specific instance
  3. If your custom code depends on other libraries and these are not part of the Airlock IAM release, copy them into the same libs folder as the custom plugins jar file.
  4. Make sure all copied libraries can be read by the process running Airlock IAM.

You need to restart the affected Airlock IAM instance(s) to load the new plugins.

Testing the installation

  1. The easiest way to test whether the custom plugins are available in your instance is by using the Config Editor:
  2. Log into the Adminapp (using an admin that has the right to use the Config Editor).
  3. Open the Config Editor.
  4. Add a new unconnected plugin:
  5. 30803633.png
  6. Verify that the custom plugin(s) are in the list of selectable plugins.
  7. If one or more custom plugins are not available in the list, check the plugin code and the above installation steps. Possible reasons are:
    • The jar files have not been added to the libs folder of the instance (or the common instance).
    • The jar file(s) containing the custom plugin(s) does not contain "airlock" or "medusa" in its name.
    • One or more plugins have no @Plugin annotation (can be verified and fixed by the custom code developer).