After you have created your extension, you need to install it, configure it, and distribute it.
To install an extension, you need to have access to the JAR file and know the following information about the extension or extensions contained within the file.
What you need to create |
A display name for the extension. |
|
A description for the extension. |
What you need to know |
The policy type of the extension, which defines the policy type it can be used with. You should know whether it is an extension for an Access Gateway Authorization policy, an Access Gateway Identity Injection policy, or an Identity Server Role policy. |
|
The name of the Java class that is used by the extension. Each data type usually uses a different Java factory class. |
|
The filename of the extension. |
|
The type of data the extension manipulates. Authorization Policy: Can be used to return:
Identity Injection Policy: A data extension that retrieves data for injecting into a header. Identity Role Policy: Can be used to return:
External Attribute Source Policy: You can use it to:
|
|
The names, IDs, and mapping type of any configuration parameters. Configuration parameters allow the policy engine to pass data to the extension, which the extension can then use to retrieve data or as part of its evaluation. |
If the file contains more than one extension, create a configuration for each extension in the file.
Copy the JAR file to a location that you can browse to from Administration Console.
In Administration Console, click Policies > Extensions.
To upload the file, click Upload > Browse, select the file, then click Open.
(Conditional) If you want this JAR file to overwrite an existing version of the file, select Overwrite existing *.jar file.
Click OK.
The file is uploaded to Administration Console, but nothing is visible on the Extensions page until you create a configuration.
To create an extension configuration, click New, then fill in the following fields:
Name: Specify a display name for the extension.
Description: (Optional) Specify the purpose of the extension and how it should be used.
Policy Type: Select the type of extension you have uploaded.
Type: Select the data type of the extension.
Class Name: Specify the name of the class that creates the extension, for example com.acme.policy.action.successActionFactory.
File Name: Select the JAR file that contains the Java class that implements the extension and its corresponding factory. This should be the file you uploaded in Step 3.
Click OK.
(Conditional) If the extension requires data from Access Manager, click the name of the extension.
In the Configuration Parameters section, click New, specify a name and ID, then click OK.
The developer of the extension must supply the name and ID that the extension requires.
In the Mapping column, select the required data type.
The developer of the extension must supply the data type that is required. If the data type is a data string, then the developer needs to explain the type of information you need to supply in the text field.
(Conditional) If the extension requires more than one data item, repeat Step 9 and Step 10.
Click OK.
The extension is now available for the policy type it was created for.
(Conditional) If the class can be used for multiple policy types, you need to create an extension configuration for each policy type.
For example, if an extension can be used for both an Identity Injection policy and a Role policy, you need to create an entry for both. The File Name option should contain the same value, but the other options should contain unique values.
Continue with Distributing a Policy Extension to Access Manager Devices.
To distribute the policy extension to the devices that need it:
Create a Role, Identity Injection, or Authorization policy that uses the extension.
Assign the policy to a device:
For a Role policy, enable it for an Identity Server.
For an Authorization policy, assign it to a protected resource.
For an Identity Injection policy, assign it to a protected resource.
IMPORTANT:Do not update the device at this time. The JAR files must be distributed before you update the device.
Distribute the JAR files:
Click Policies > Extensions.
Select the extension, then click Distribute JARs.
Restart services on the devices listed for reboot.
Identity Server: /etc/init.d/novell-idp restart
Access Gateway: /etc/init.d/novell-mag restart
(Conditional) If the extension is for an Authorization policy or an Identity Injection policy, update Access Gateway.
(Conditional) If the extension is for a Role policy, update Identity Server.
You can distribute the extension as either a JAR file or as a ZIP file. If the extension contains multiple types of extensions or contains multiple configuration parameters, you might want to consider distributing the extension as a ZIP file.
Import your JAR file and configure it as described in Installing the Extension on Administration Console. After it has been configured, you can export it as a ZIP file. Your users can then import the ZIP file, and each extension type you have created is imported with its configuration parameters. In the documentation you create for the extension, document any parameter the user needs to modify after the import.
To export an extension:
In Administration Console, click Policies > Extensions.
Select all the extensions that are part of your JAR file.
If you have more than one JAR file, you can select the extensions that belong to it and include them in the same export.
Click Export, specify a name for the file, then click OK.
Follow your browser prompts to save the file to disk.