Class SecureLogging


  • public class SecureLogging
    extends Object
    Class which provides Markers for differential logging. Implements "MultiMarker"s (MultiMarker) for optimal filtering if the dependency org.owasp is available, or corresponding conventional Markers as a fall back solution.

    Example usage:

     
     LOG.info(SecureLogging.SECURITY_FAILURE_CONFIDENTIAL, "Confidential Security Failure message.");
     
     
    Example filters for appenders in logback.xml to accept or reject the above log event:
     <filter class="SecurityMarkerFilter"/>
     <filter class="ExcludeClassifiedMarkerFilter"/>
     
    • Field Detail

      • LOG

        private static final org.slf4j.Logger LOG
        Logger instance.
      • initialized

        private static boolean initialized
      • markerSecurSuccConfid

        private static org.slf4j.Marker markerSecurSuccConfid
      • markerSecurFailConfid

        private static org.slf4j.Marker markerSecurFailConfid
      • markerSecurAuditConfid

        private static org.slf4j.Marker markerSecurAuditConfid
      • SECURITY_SUCCESS_CONFIDENTIAL_MARKER_NAME

        private static final String SECURITY_SUCCESS_CONFIDENTIAL_MARKER_NAME
        See Also:
        Constant Field Values
      • SECURITY_FAILURE_CONFIDENTIAL_MARKER_NAME

        private static final String SECURITY_FAILURE_CONFIDENTIAL_MARKER_NAME
        See Also:
        Constant Field Values
      • SECURITY_AUDIT_CONFIDENTIAL_MARKER_NAME

        private static final String SECURITY_AUDIT_CONFIDENTIAL_MARKER_NAME
        See Also:
        Constant Field Values
      • RESTRICTED

        public static final org.slf4j.Marker RESTRICTED
        Marker for Restricted log events.
      • CONFIDENTIAL

        public static final org.slf4j.Marker CONFIDENTIAL
        Marker for Confidential log events. Usage with OWASP provides possibility for masking, e.g. of passwords.
      • SECURITY_SUCCESS

        public static final org.slf4j.Marker SECURITY_SUCCESS
        Marker for Security Success log events.
      • SECURITY_FAILURE

        public static final org.slf4j.Marker SECURITY_FAILURE
        Marker for Security Failure log events.
      • SECURITY_SUCCESS_CONFIDENTIAL

        public static final org.slf4j.Marker SECURITY_SUCCESS_CONFIDENTIAL
        Marker or MultiMarker for Confidential Security Success log events.
      • SECURITY_FAILURE_CONFIDENTIAL

        public static final org.slf4j.Marker SECURITY_FAILURE_CONFIDENTIAL
        Marker or MultiMarker for Confidential Security Failure log events.
      • SECURITY_AUDIT_CONFIDENTIAL

        public static final org.slf4j.Marker SECURITY_AUDIT_CONFIDENTIAL
        Marker or MultiMarker for Confidential Security Audit log events.
    • Constructor Detail

      • SecureLogging

        private SecureLogging()
    • Method Detail

      • getMarkerSecurSuccConfid

        private static org.slf4j.Marker getMarkerSecurSuccConfid()
      • getMarkerSecurFailConfid

        private static org.slf4j.Marker getMarkerSecurFailConfid()
      • getMarkerSecurAuditConfid

        private static org.slf4j.Marker getMarkerSecurAuditConfid()
      • initMarkers

        private static void initMarkers()
        Main method to initialize the combined Markers provided by this class.
      • createDefaultMarkers

        private static void createDefaultMarkers()
      • createMultiMarkers

        private static void createMultiMarkers​(Class<?> cExtClass)
      • hasExtClass

        public static boolean hasExtClass()
        Returns:
        True if the dependency is available.
      • findExtClass

        private static Class<?> findExtClass​(String className)
        Returns:
        The given Class if parameter 'className' can be resolved, otherwise String.class.