Class WikiSecurityEvent

  • All Implemented Interfaces:
    java.io.Serializable

    public final class WikiSecurityEvent
    extends WikiEvent

    Event class for security events: login/logout, wiki group adds/changes, and authorization decisions. When a WikiSecurityEvent is constructed, the security logger LOG is notified.

    These events are logged with priority ERROR:

    • login failed - bad credential or password

    These events are logged with priority WARN:

    • access denied
    • login failed - credential expired
    • login failed - account expired

    These events are logged with priority INFO:

    • login succeeded
    • logout
    • user profile name changed

    These events are logged with priority DEBUG:

    • access allowed
    • add group
    • remove group
    • clear all groups
    • add group member
    • remove group member
    • clear all members from group
    Since:
    2.3.79
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int ACCESS_ALLOWED
      When access to a resource is allowed.
      static int ACCESS_DENIED
      When access to a resource is allowed.
      static int GROUP_ADD
      When a new wiki group is added.
      static int GROUP_CLEAR_GROUPS
      When all wiki groups are removed from GroupDatabase.
      static int GROUP_REMOVE
      When a wiki group is deleted.
      static int LOGIN_ACCOUNT_EXPIRED
      When a login fails due to account expiration.
      static int LOGIN_ANONYMOUS
      When a user first accesses JSPWiki, but before logging in or setting a cookie.
      static int LOGIN_ASSERTED
      When a user sets a cookie to assert their identity.
      static int LOGIN_AUTHENTICATED
      When a user authenticates with a username and password, or via container auth.
      static int LOGIN_CREDENTIAL_EXPIRED
      When a login fails due to credential expiration.
      static int LOGIN_FAILED
      When a login fails due to wrong username or password.
      static int LOGIN_INITIATED
      When a user's attempts to log in as guest, via cookies, using a password or otherwise.
      static int LOGOUT
      When a user logs out.
      static int PRINCIPAL_ADD
      When a Principal should be added to the Session
      static int PROFILE_NAME_CHANGED
      When a user profile name changes.
      static int PROFILE_SAVE
      When a user profile is saved.
      static int SESSION_EXPIRED
      When a session expires.
      • Fields inherited from class java.util.EventObject

        source
    • Constructor Summary

      Constructors 
      Constructor Description
      WikiSecurityEvent​(java.lang.Object src, int type, java.lang.Object target)
      Constructs a new instance of this event type, which signals a security event has occurred.
      WikiSecurityEvent​(java.lang.Object src, int type, java.security.Principal principal, java.lang.Object target)
      Constructs a new instance of this event type, which signals a security event has occurred.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String eventName​(int type)
      Returns a textual representation of an event type.
      java.lang.Object getPrincipal()
      Returns the principal to whom the opeation applied, if supplied.
      java.lang.Object getTarget()
      Returns the object that was operated on, if supplied.
      java.lang.String getTypeDescription()
      Returns a human-readable description of the event type.
      java.lang.String toString()
      Prints a String (human-readable) representation of this object.
      • Methods inherited from class java.util.EventObject

        getSource
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • WikiSecurityEvent

        public WikiSecurityEvent​(java.lang.Object src,
                                 int type,
                                 java.security.Principal principal,
                                 java.lang.Object target)
        Constructs a new instance of this event type, which signals a security event has occurred. The source parameter is required, and may not be null. When the WikiSecurityEvent is constructed, the security logger LOG is notified.
        Parameters:
        src - the source of the event, which can be any object: a wiki page, group or authentication/authentication/group manager.
        type - the type of event
        principal - the subject of the event, which may be null
        target - the changed Object, which may be null
      • WikiSecurityEvent

        public WikiSecurityEvent​(java.lang.Object src,
                                 int type,
                                 java.lang.Object target)
        Constructs a new instance of this event type, which signals a security event has occurred. The source parameter is required, and may not be null. When the WikiSecurityEvent is constructed, the security logger LOG is notified.
        Parameters:
        src - the source of the event, which can be any object: a wiki page, group or authentication/authentication/group manager.
        type - the type of event
        target - the changed Object, which may be null.
    • Method Detail

      • getPrincipal

        public java.lang.Object getPrincipal()
        Returns the principal to whom the opeation applied, if supplied. This method may return null — and calling methods should check for this condition.
        Returns:
        the changed object
      • getTarget

        public java.lang.Object getTarget()
        Returns the object that was operated on, if supplied. This method may return null — and calling methods should check for this condition.
        Returns:
        the changed object
      • toString

        public java.lang.String toString()
        Prints a String (human-readable) representation of this object.
        Overrides:
        toString in class WikiEvent
        Returns:
        the String representation
        See Also:
        Object.toString()
      • eventName

        public java.lang.String eventName​(int type)
        Returns a textual representation of an event type.
        Parameters:
        type - the type
        Returns:
        the string representation