Interface SecurityContextHolderStrategy

All Known Implementing Classes:
ListeningSecurityContextHolderStrategy, TestSecurityContextHolderStrategyAdapter

public interface SecurityContextHolderStrategy
A strategy for storing security context information against a thread.

The preferred strategy is loaded by SecurityContextHolder.

  • Method Details

    • clearContext

      void clearContext()
      Clears the current context.
    • getContext

      SecurityContext getContext()
      Obtains the current context.
      Returns:
      a context (never null - create a default implementation if necessary)
    • getDeferredContext

      default Supplier<SecurityContext> getDeferredContext()
      Obtains a Supplier that returns the current context.
      Returns:
      a Supplier that returns the current context (never null - create a default implementation if necessary)
      Since:
      5.8
    • setContext

      void setContext(SecurityContext context)
      Sets the current context.
      Parameters:
      context - to the new argument (should never be null, although implementations must check if null has been passed and throw an IllegalArgumentException in such cases)
    • setDeferredContext

      default void setDeferredContext(Supplier<SecurityContext> deferredContext)
      Sets a Supplier that will return the current context. Implementations can override the default to avoid invoking Supplier.get().
      Parameters:
      deferredContext - a Supplier that returns the SecurityContext
      Since:
      5.8
    • createEmptyContext

      SecurityContext createEmptyContext()
      Creates a new, empty context implementation, for use by SecurityContextRepository implementations, when creating a new context for the first time.
      Returns:
      the empty context.