Configuring Password Recovery
If a user forgets their password, they can reset it by using the password recovery option in the ES. However, the password recovery option is disabled by default in ES. Therefore, the administrator needs to first configure and enable it, so that it can be used by ES users.
Follow the instructions below to configure ES to enable password recovery.
Create an email account for the password recovery emails of ES (e.g., no-reply@foo.com).
Uncomment the
mailto
transportSender section in the<ES_HOME>/repository/conf/axis2/axis2.xml
file and configure the ES email account.<transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender"> <parameter name="mail.smtp.from">esmailsample@gmail.com</parameter> <parameter name="mail.smtp.user">esmailsample</parameter> <parameter name="mail.smtp.password">esMailTest</parameter> <parameter name="mail.smtp.host">smtp.gmail.com</parameter> <parameter name="mail.smtp.port">587</parameter> <parameter name="mail.smtp.starttls.enable">true</parameter> <parameter name="mail.smtp.auth">true</parameter> </transportSender>
Use the email address, username and password of the mail account you have set up as the values for
{email-address}
,{username}
,{password}
respectively.Example:
<transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender"> <parameter name="mail.smtp.from">foo@gmail.com</parameter> <parameter name="mail.smtp.user">foo</parameter> <parameter name="mail.smtp.password">$foo1234</parameter> <parameter name="mail.smtp.host">smtp.gmail.com</parameter> <parameter name="mail.smtp.port">587</parameter> <parameter name="mail.smtp.starttls.enable">true</parameter> <parameter name="mail.smtp.auth">true</parameter> </transportSender>
Open the
identity-mgt.properties
file, which is in the<ES_HOME>/repository/conf/identity
 directory and set the values for the following properties:Notification.Expire.Time=3 UserAccount.Recovery.Enable=true
Add the HTTPS URLs of the Publisher and Store, in the
<ES_HOME>/repository/deployment/server/jaggeryapps/sso/config/sso.json
file.The port provided must be the HTTPS port.
"urls": { "publisher": "%https.host%/publisher", "store": "%https.host%/store" }
Example:
"urls": { "publisher": "https://10.100.7.35:9443/publisher", "store": "https://10.100.7.35:9443/store" }
Update the password reset link, under the
passwordReset
configuration section, in the<ES_HOME>/repository/conf/email/email-admin-config.xml
file. Replace localhost with the respective hostname or IP.https://localhost:9443/sso/reset-link?confirmation={confirmation-code}&username={user-name}
Example:
https://10.100.7.35:9443/sso/reset-link?confirmation={confirmation-code}&username={user-name}