# Interface AuthConfigProvider

public interface AuthConfigProvider
Provides `ClientAuthConfig` and `ServerAuthConfig` instances to JASPIC authentication modules. An AuthConfigProvider is responsible for loading authentication configuration from a source (e.g., a configuration file, database, or service) and making it available to the authentication modules.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ClientAuthConfig`
  `getClientAuthConfig(String layer, String appContext, CallbackHandler handler)`
  Returns the client-side authentication configuration for the specified layer and application context.
  `ServerAuthConfig`
  `getServerAuthConfig(String layer, String appContext, CallbackHandler handler)`
  Returns the server-side authentication configuration for the specified layer and application context.
  `void`
  `refresh()`
  Refreshes the configuration, reloading any changed settings from the underlying source.

- ## Method Details

  - ### getClientAuthConfig

    ClientAuthConfig getClientAuthConfig(String layer, String appContext, CallbackHandler handler) throws AuthException
    Returns the client-side authentication configuration for the specified layer and application context.
    Parameters:
      `layer` - the message layer
      `appContext` - the application context
      `handler` - the callback handler for obtaining sensitive configuration data
    Returns:
      the ClientAuthConfig, or `null` if no configuration is available
    Throws:
      `AuthException` - if an error occurs while retrieving the configuration

  - ### getServerAuthConfig

    ServerAuthConfig getServerAuthConfig(String layer, String appContext, CallbackHandler handler) throws AuthException
    Returns the server-side authentication configuration for the specified layer and application context.
    Parameters:
      `layer` - the message layer
      `appContext` - the application context
      `handler` - the callback handler for obtaining sensitive configuration data
    Returns:
      the ServerAuthConfig, or `null` if no configuration is available
    Throws:
      `AuthException` - if an error occurs while retrieving the configuration

  - ### refresh

    void refresh()
    Refreshes the configuration, reloading any changed settings from the underlying source.