com.ibm.itim.apps.identity

Class ForgotPasswordManager

  • java.lang.Object
    • com.ibm.itim.apps.identity.ForgotPasswordManager


  • public class ForgotPasswordManager
    extends java.lang.Object
    This class provides forgot password management capabilities.
    Since:
    6.0
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      ForgotPasswordRequest changePassword(java.lang.String userID, java.util.Map<java.lang.String,java.lang.String> challengesAndResponses, java.lang.String newPassword)
      The method changes the password for the associated userID after authenticating the user using challengesAndResponses and verifying that the system is set to allow password changes after challenge-response authentication.
      ForgotPasswordConfiguration getForgotPasswordConfiguration()
      The method returns the Forgot Password Configuration.
      java.util.Collection<java.lang.String> getSecretQuestion(java.lang.String userID)
      The method gets a collection of secret questions to be asked when a user forgets the password.
      ForgotPasswordRequest resetPassword(java.lang.String userID, java.util.Map<java.lang.String,java.lang.String> challengesAndResponses)
      The method resets the password for the associated userID after authenticating using challenge response.
      boolean validateChallengeResponse(java.lang.String userID, java.util.Map<java.lang.String,java.lang.String> challengesAndResponses)
      The method checks the responses for the user challenges.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ForgotPasswordManager

        public ForgotPasswordManager(PlatformContext platform)
        Constructs the manager with a platform context.
        Parameters:
        platform - PlatformContext identifying identity platform.
    • Method Detail

      • getSecretQuestion

        public java.util.Collection<java.lang.String> getSecretQuestion(java.lang.String userID)
                                                                 throws java.rmi.RemoteException,
                                                                        ITIMFailedLoginException,
                                                                        ApplicationException
        The method gets a collection of secret questions to be asked when a user forgets the password.
        Parameters:
        The - userID parameter is the ID of the login user.
        Returns:
        The method returns a collection of challenges represented as strings.
        Throws:
        A - RemoteException is thrown if a general exception occurs.
        A - ITIMFailedLoginException is thrown if an authentication error occurs.
        A - ApplicationException is thrown if the method is unable to retrieve the challenges.
        java.rmi.RemoteException
        ITIMFailedLoginException
        ApplicationException
      • getForgotPasswordConfiguration

        public ForgotPasswordConfiguration getForgotPasswordConfiguration()
                                                                   throws ApplicationException,
                                                                          java.rmi.RemoteException,
                                                                          ITIMFailedLoginException
        The method returns the Forgot Password Configuration.
        Returns:
        The method return is ForgotPasswordConfiguration - which contains the configuration information for ForgotPassword.
        Throws:
        An - ITIMFailedLoginException is thrown if there was an authentication error.
        A - RemoteException is thrown if a general exception occurs.
        An - ApplicationExcepton is thrown if the method is unable to retrieve the setting.
        ApplicationException
        java.rmi.RemoteException
        ITIMFailedLoginException
      • resetPassword

        public ForgotPasswordRequest resetPassword(java.lang.String userID,
                                                   java.util.Map<java.lang.String,java.lang.String> challengesAndResponses)
                                            throws ITIMFailedLoginException,
                                                   java.rmi.RemoteException,
                                                   ApplicationException
        The method resets the password for the associated userID after authenticating using challenge response. If password synchronization is turned on, the passwords for all individual accounts associated with the userID are reset to the new password.
        Parameters:
        The - userID parameter is the ID of the login user.
        The - challengesAndResponses parameter specifies a mapping of user challenges and responses.
        Returns:
        The method return is ForgotPasswordRequest and it contains information about the request.
        Throws:
        An - ITIMFailedLoginException is thrown if there was an authentication error.
        A - RemoteException is thrown if a general exception occurs.
        An - ApplicationExcepton is thrown if the method is unable to reset the password.
        ITIMFailedLoginException
        java.rmi.RemoteException
        ApplicationException
      • changePassword

        public ForgotPasswordRequest changePassword(java.lang.String userID,
                                                    java.util.Map<java.lang.String,java.lang.String> challengesAndResponses,
                                                    java.lang.String newPassword)
                                             throws ITIMFailedLoginException,
                                                    java.rmi.RemoteException,
                                                    ApplicationException
        The method changes the password for the associated userID after authenticating the user using challengesAndResponses and verifying that the system is set to allow password changes after challenge-response authentication. If password synchronization is turned on, the passwords for all individual accounts associated with the userID are reset to the new password.
        Parameters:
        The - userID parameter is the ID of the login user.
        The - challengesAndResponses parameter specifies a mapping of user challenges and responses.
        The - newPassword parameter specifies the value of the new password.
        Returns:
        The method return is ForgotPasswordRequest and it contains information about the request.
        Throws:
        An - ITIMFailedLoginException is thrown if there was an authentication error.
        A - RemoteException is thrown if a general exception occurs.
        An - ApplicationExcepton is thrown if the method is unable to change the password.
        ITIMFailedLoginException
        java.rmi.RemoteException
        ApplicationException
      • validateChallengeResponse

        public boolean validateChallengeResponse(java.lang.String userID,
                                                 java.util.Map<java.lang.String,java.lang.String> challengesAndResponses)
                                          throws java.rmi.RemoteException,
                                                 ITIMFailedLoginException,
                                                 ApplicationException
        The method checks the responses for the user challenges. If the maximum number of incorrect login attempts are exceeded then the account will get suspended.
        Parameters:
        The - userID parameter is the ID of the login user.
        The - challengesAndResponses parameter specifies a mapping of user challenges and responses.
        Returns:
        true if the challenges and responses are correct, false otherwise.
        Throws:
        java.rmi.RemoteException - is thrown if a general exception occurs.
        ITIMFailedLoginException - is thrown if there is an authentication error like, challenge response is not enabled, user is not found, account is not active, and maximum number of incorrect login attempts are exceeded.
        ApplicationException - is thrown if the method is unable to validate the challenges and responses.