Interface SecurityAuthenticator

All Known Implementing Classes:
JAASSecurityAuthenticator, SecurityAuthenticatorSupport

public interface SecurityAuthenticator
A SecurityAuthenticator allows to plugin custom authenticators, such as JAAS based or custom implementations.
  • Method Details

    • setName

      void setName(String name)
      Sets the name of the realm to use.
    • getName

      String getName()
      Gets the name of the realm.
    • setRoleClassNames

      void setRoleClassNames(String names)
      Sets the role class names (separated by comma)

      By default if no explicit role class names has been configured, then this implementation will assume the Subject Principals is a role if the classname contains the word role (lower cased).

      Parameters:
      names - a list of FQN class names for role Principal implementations.
    • login

      Subject login(HttpPrincipal principal) throws LoginException
      Attempts to login the Principal on this realm.

      The login is a success if no Exception is thrown, and a Subject is returned.

      Parameters:
      principal - the principal
      Returns:
      the subject for the logged in principal, must not be null
      Throws:
      LoginException - is thrown if error logging in the Principal
    • logout

      void logout(Subject subject) throws LoginException
      Attempt to logout the subject.
      Parameters:
      subject - subject to logout
      Throws:
      LoginException - is thrown if error logging out subject
    • getUserRoles

      String getUserRoles(Subject subject)
      Gets the user roles from the given Subject
      Parameters:
      subject - the subject
      Returns:
      null if no roles, otherwise a String with roles separated by comma.