Class DefaultCrumbIssuer

java.lang.Object
hudson.security.csrf.CrumbIssuer
hudson.security.csrf.DefaultCrumbIssuer
All Implemented Interfaces:
ExtensionPoint, Describable<CrumbIssuer>

public class DefaultCrumbIssuer extends CrumbIssuer
A crumb issuing algorithm based on the request principal and the session ID.
Author:
dty
  • Field Details

    • EXCLUDE_SESSION_ID

      @Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class) public static boolean EXCLUDE_SESSION_ID
  • Constructor Details

    • DefaultCrumbIssuer

      @DataBoundConstructor public DefaultCrumbIssuer()
    • DefaultCrumbIssuer

      @Deprecated public DefaultCrumbIssuer(boolean excludeClientIPFromCrumb)
      Deprecated.
      Parameters:
      excludeClientIPFromCrumb - unused
  • Method Details

    • isExcludeClientIPFromCrumb

      @Deprecated public boolean isExcludeClientIPFromCrumb()
      Deprecated.
      This setting is no longer effective.
      Returns:
      the previously set value
    • issueCrumb

      protected String issueCrumb(jakarta.servlet.ServletRequest request, String salt)
      Description copied from class: CrumbIssuer
      Create a crumb value based on user specific information in the request. The crumb should be generated by building a cryptographic hash of:
      • relevant information in the request that can uniquely identify the client
      • the salt value
      • an implementation specific guarded secret.
      Overrides:
      issueCrumb in class CrumbIssuer
    • validateCrumb

      public boolean validateCrumb(jakarta.servlet.ServletRequest request, String salt, String crumb)
      Description copied from class: CrumbIssuer
      Validate a previously created crumb against information in the current request.
      Overrides:
      validateCrumb in class CrumbIssuer
      Parameters:
      crumb - The previously generated crumb to validate against information in the current request