Onegini IdP Extension may define one or more of the following extension points. Each extension point is responsible for providing customized functionality of a single behaviour.
Available extension points
The following extension point is mandatory in Onegini IdP Extension and is provided by Onegini IdP Extension SDK:
The following list contains available extension points that may be implemented in Onegini IdP Extension:
- Account link
- Deliver external code
- Email gateway
- Profile attributes update
- Username validate
- Post Process actions
- Profile Attributes Transformation
- Person Pre Creation Process
Onegini IdP provides also extension points embedded in Onegini IdP Core. In this case of these extension points the implementation is already provided in Onegini IdP Core, the extension can be enabled or disabled for specific installation.
- Just-in-time migration
- Password rest migration
Note that certain extension points may require other extension points in order to provide valid behaviour.
Implementing extension points with Onegini IdP Extension SDK
The preferred way to implement extension is to use Onegini IdP Extension SDK. This components provides the base for a Spring Boot application that exposes REST API for defined extension points.
Config extension point
This extension point is mandatory and is implemented in Onegini IdP Extension SDK. There is no additional effort required to make this extension point work.
Onegini IdP Extension SDK automatically provides implementation of the extension point that is necessary to use resources for customized installation. The resources must be put in
extension-resources folder of the application resources. The
extension-resources folder must have the following structure:
Templates folder contains overriding or additional web templates.
Email templates folder contains overriding email templates.
Messages folder contains properties files with customized messages for available languages. The file name pattern should be
xx-YY stands for the locale of the particular file. The examples of valid file names are:
Static folder contains overriding or additional static resources that will be served by the application.
For templates and static resources the overriding files' paths must be in accordance with resources structure in Onegini IdP Core. It means the resource in Onegini IdP Extension overrides the resource with exact path file name placed in Onegini IdP Core.
Embedded extension points
The embedded extension points can be enabled by corresponding properties. There is no additional effort required to make this extension points work.
Customizable extension points
Other extension points, not described in subsections above, may be implemented by providing implementation of particular Java interface defined in Onegini IdP Extension SDK.