Package hudson.security.csrf
Class DefaultCrumbIssuer
java.lang.Object
hudson.security.csrf.CrumbIssuer
hudson.security.csrf.DefaultCrumbIssuer
- All Implemented Interfaces:
ExtensionPoint
,Describable<CrumbIssuer>
A crumb issuing algorithm based on the request principal and the remote address.
- Author:
- dty
-
Nested Class Summary
Nested classes/interfaces inherited from class hudson.security.csrf.CrumbIssuer
CrumbIssuer.RestrictedApi
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
Field Summary
Fields inherited from class hudson.security.csrf.CrumbIssuer
DEFAULT_CRUMB_NAME
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
protected String
issueCrumb
(jakarta.servlet.ServletRequest request, String salt) Create a crumb value based on user specific information in the request.boolean
validateCrumb
(jakarta.servlet.ServletRequest request, String salt, String crumb) Validate a previously created crumb against information in the current request.Methods inherited from class hudson.security.csrf.CrumbIssuer
all, getApi, getCrumb, getCrumb, getCrumb, getCrumbRequestField, getDescriptor, initStaplerCrumbIssuer, issueCrumb, validateCrumb, validateCrumb, validateCrumb, validateCrumb
-
Field Details
-
EXCLUDE_SESSION_ID
@Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class) public static boolean EXCLUDE_SESSION_ID
-
-
Constructor Details
-
DefaultCrumbIssuer
@DataBoundConstructor public DefaultCrumbIssuer(boolean excludeClientIPFromCrumb)
-
-
Method Details
-
isExcludeClientIPFromCrumb
public boolean isExcludeClientIPFromCrumb() -
issueCrumb
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 classCrumbIssuer
-
validateCrumb
Description copied from class:CrumbIssuer
Validate a previously created crumb against information in the current request.- Overrides:
validateCrumb
in classCrumbIssuer
crumb
- The previously generated crumb to validate against information in the current request
-