IM Developer Guide – Search Filter

About this guide

This document gives an overview of the installation of PhenixID Identity Manager. Additional information is found on PhenixID web site or through PhenixID support.

Summary

This document explains Search Filter in PhenixID Identity Manager. It is assumed reader is familiar with both the Identity Manager and Identity Manager Configurator. The document is a part of a collection of documents explaining how to extend and customize Identity Manager. In addition there is also Javadoc and sample code.

Mentioning of abstract base class assumes these are used when developing custom code.
First time readers are recommended to read overview document, IM Developer Overview.

Definition

A Search Filter is linked to all searches in IM. This means every time a result set of objects is to be presented to an administrator, or any other type of search.

A Search Filter affects all administrators or a selected number of the same. How this is configured through IM policies is covered in IM Administration Guide.

Developing Search Filter

A Search Filter is a Java class. Required source level is version 8. A search must implement se.nordicedge.interfaces.CustomSearchFilterResult

A base class is provided through:

se.nordicedge.misc.tab.filter.BaseCustomSearchFilterResult

Flow of Execution

After IM has executed the search operation, the Search Filter parseSearchResult is called. Here the result to be returned to IM can be manipulated. Entries can either be removed or added.

Configuration

Configuring Search Filters are done with a policy in DSEditor.properties.

The actual Java class file must be located in the class path for the Identity Manager.

Set the policy Custom.SearchResults.Filters to the full package name and class name. Do NOT include “.class” suffix.

Custom.SearchResults.Filters=myCustomPackage.MySearchFilter

Multiple Search Filters can be entered in the policy, separated by comma (,).