Class SimpleServerAuthConfig

java.lang.Object
org.apache.catalina.authenticator.jaspic.SimpleServerAuthConfig
All Implemented Interfaces:
AuthConfig, ServerAuthConfig

public class SimpleServerAuthConfig extends Object implements ServerAuthConfig
Basic implementation primarily intended for use when using third-party ServerAuthModule implementations that only provide the module. This implementation supports configuring the ServerAuthContext with multiple modules.
  • Constructor Details

    • SimpleServerAuthConfig

      public SimpleServerAuthConfig(String layer, String appContext, CallbackHandler handler, Map<String,Object> properties)
      Creates a new SimpleServerAuthConfig.
      Parameters:
      layer - Message layer
      appContext - Application context
      handler - Callback handler
      properties - Configuration properties
  • Method Details

    • getMessageLayer

      public String getMessageLayer()
      Description copied from interface: jakarta.security.auth.message.config.AuthConfig
      Returns the message layer for which this configuration applies.
      Specified by:
      getMessageLayer in interface AuthConfig
      Returns:
      the message layer
    • getAppContext

      public String getAppContext()
      Description copied from interface: jakarta.security.auth.message.config.AuthConfig
      Returns the application context for which this configuration applies.
      Specified by:
      getAppContext in interface AuthConfig
      Returns:
      the application context
    • getAuthContextID

      public String getAuthContextID(MessageInfo messageInfo)
      Determines the authentication context ID for the given message.

      Returns the MessageInfo's string representation as the auth context ID.

      Specified by:
      getAuthContextID in interface AuthConfig
      Parameters:
      messageInfo - the message information used to determine the context ID
      Returns:
      the authentication context ID, or null if no context applies
    • refresh

      public void refresh()
      Refreshes the configuration, reloading any changed settings.

      Clears the cached ServerAuthConfig so it will be recreated on next use.

      Specified by:
      refresh in interface AuthConfig
    • isProtected

      public boolean isProtected()
      Indicates whether the authentication mechanism is protected, meaning that the configuration data is stored securely.

      This implementation always returns false.

      Specified by:
      isProtected in interface AuthConfig
      Returns:
      true if the mechanism is protected, false otherwise
    • getAuthContext

      public ServerAuthContext getAuthContext(String authContextID, Subject serviceSubject, Map<String,Object> properties) throws AuthException
      Returns the ServerAuthContext for the given authentication context ID.

      Loads ServerAuthModule instances from properties keyed with org.apache.catalina.authenticator.jaspic.ServerAuthModule.N where N is 1-based index. The returned context is cached and reused for subsequent calls.

      Specified by:
      getAuthContext in interface ServerAuthConfig
      Parameters:
      authContextID - the authentication context identifier
      serviceSubject - the service subject
      properties - the configuration properties
      Returns:
      the server authentication context
      Throws:
      AuthException - if an error occurs during authentication context creation
    • createServerAuthContext

      protected ServerAuthContext createServerAuthContext(List<ServerAuthModule> modules)
      Creates the ServerAuthContext. Can be overridden by subclasses to provide a custom implementation.
      Parameters:
      modules - List of ServerAuthModule instances
      Returns:
      The ServerAuthContext instance