Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

WSO2 Products: Custom Notification Module for Account Management in Identity Server

DZone's Guide to

WSO2 Products: Custom Notification Module for Account Management in Identity Server

This blog post describes how you can add custom notification modules for account recovery and validation using identity management features.

· Integration Zone ·
Free Resource

WSO2 is the only open source vendor to be named a leader in The Forrester Wave™: API Management Solutions, Q4 2018 Report. Download the report now or try out our product for free.

You can configure any other notification modules with WSO2IS or extend the existing email sending module; WSO2IS contains an email sending module with WSO2IS which is based on Axis2.

  1. Implement custom notification module by implementing the org.wso2.carbon.identity.mgt.NotificationSendingModule interface. You can find a sample project from here. This module is sending a JSON payload to a given endpoint as the notification.

  2. Copy your implementation as a .jar file into the /repository/components/lib directory.

  3.  Register the module using /repository/conf/security/identity-mgt.properties file.

Please add following property in to the file.

Identity.Mgt.Notification.Sending.Module.2=org.soasecurity.identity.mgt.notification.module.JSONNotificationModule

4.   Restart the server.

5.   Try out by sending the notification type as JSON. Please note the value “JSON” is configured in the custom module as the getNotificationType() value.

6.   notifyUser() method of your implementation would be executed. In sample module, you can see that it is sent a JSON to a given end-point url.

IAM is now more than a security project. It’s an enabler for an integration agile enterprise. If you’re currently evaluating an identity solution or exploring IAM, join this webinar.

Topics:
wso2 ,identity management system

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}