Interface IAuthenticator2

  • All Superinterfaces:
    IAuthenticator

    public interface IAuthenticator2
    extends IAuthenticator
    Extension interface for authenticators that can update user credentials in addition to authenticating them.
    Since:
    3.4
    Author:
    Christian W. Damus (CEA LIST)
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean isAdministrator​(java.lang.String userID)
      Queries whether a given user has administrative privileges.
      void resetPassword​(java.lang.String adminID, char[] adminPassword, java.lang.String userID, char[] newPassword)
      Performs an administrative resets of the password stored for the user identified by userID.
      void updatePassword​(java.lang.String userID, char[] oldPassword, char[] newPassword)
      Updates the password stored for the user identified by userID.
    • Method Detail

      • updatePassword

        void updatePassword​(java.lang.String userID,
                            char[] oldPassword,
                            char[] newPassword)
        Updates the password stored for the user identified by userID. The oldPassword is authenticated as per usual and is replaced by the newPassword only (and atomically) on success.
        Parameters:
        userID - the ID of the user whose password is to be updated
        oldPassword - the user's current password attempt to verify against the stored password
        newPassword - the new password to replace the oldPassword
        Throws:
        java.lang.SecurityException - on any failure to authenticate the oldPassword or validate and/or set the newPassword
      • resetPassword

        void resetPassword​(java.lang.String adminID,
                           char[] adminPassword,
                           java.lang.String userID,
                           char[] newPassword)
        Performs an administrative resets of the password stored for the user identified by userID. The adminID and adminPassword must authenticate to permit the userID's password to be set to the newPassword.
        Parameters:
        adminID - the ID of the administrator requesting the reset
        adminPassword - the administrator's password
        userID - the ID of the user whose password is to be reset
        newPassword - the new password to replace the user's old password
        Throws:
        java.lang.SecurityException - on any failure to authenticate the oldPassword or validate and/or set the newPassword
      • isAdministrator

        boolean isAdministrator​(java.lang.String userID)
        Queries whether a given user has administrative privileges.
        Parameters:
        userID - an user ID, which may or may not exist
        Returns:
        whether the userID exists and has administrative privileges