Enable JWT authentication for control plane interactions (i.e. create expectations, clear, reset, verify, retrieve, stop, etc)
If enabled then all control plane requests need and JWT via a authorization header which is validated using the controlPlaneJWTAuthenticationJWKSource
It is possible to enable both controlPlaneJWTAuthenticationRequired and controlPlaneTLSMutualAuthenticationRequired but the mTLS will be checked first.
Type: boolean Default: false
Java Code:
ConfigurationProperties.controlPlaneJWTAuthenticationRequired(boolean controlPlaneJWTAuthenticationRequired)
System Property:
-Dmockserver.controlPlaneJWTAuthenticationRequired=...
Environment Variable:
MOCKSERVER_CONTROL_PLANE_JWT_AUTHENTICATION_REQUIRED=...
Property File:
mockserver.controlPlaneJWTAuthenticationRequired=...
Example:
-Dmockserver.controlPlaneJWTAuthenticationRequired="true"
URL, file system path or classpath location of the JWK source when controlPlaneJWTAuthenticationRequired is enabled to validate JWT signatures
For control plane requests to be authorised:
For details of JWK see the JWK specification
Type: string Default: null
Java Code:
ConfigurationProperties.controlPlaneJWTAuthenticationJWKSource(String controlPlaneJWTAuthenticationJWKSource)
System Property:
-Dmockserver.controlPlaneJWTAuthenticationJWKSource=...
Environment Variable:
MOCKSERVER_CONTROL_PLANE_JWT_AUTHENTICATION_JWK_SOURCE=...
Property File:
mockserver.controlPlaneJWTAuthenticationJWKSource=...
Example:
-Dmockserver.controlPlaneJWTAuthenticationJWKSource="/some/existing/path"
Audience claim (i.e. aud) required when JWT authentication is enabled for control plane requests
Type: string Default: null
Java Code:
ConfigurationProperties.controlPlaneJWTAuthenticationExpectedAudience(String controlPlaneJWTAuthenticationExpectedAudience)
System Property:
-Dmockserver.controlPlaneJWTAuthenticationExpectedAudience=...
Environment Variable:
MOCKSERVER_CONTROL_PLANE_JWT_AUTHENTICATION_EXPECTED_AUDIENCE=...
Property File:
mockserver.controlPlaneJWTAuthenticationExpectedAudience=...
Example:
-Dmockserver.controlPlaneJWTAuthenticationExpectedAudience="/some/existing/path"
Matching claims expected when JWT authentication is enabled for control plane requests
Value should be string with comma separated key=value items, for example: scope=internal public,sub=some_subject
Type: string Default: null
Java Code:
ConfigurationProperties.controlPlaneJWTAuthenticationMatchingClaims(String controlPlaneJWTAuthenticationMatchingClaims)
System Property:
-Dmockserver.controlPlaneJWTAuthenticationMatchingClaims=...
Environment Variable:
MOCKSERVER_CONTROL_PLANE_JWT_AUTHENTICATION_MATCHING_CLAIMS=...
Property File:
mockserver.controlPlaneJWTAuthenticationMatchingClaims=...
Example:
-Dmockserver.controlPlaneJWTAuthenticationMatchingClaims="/some/existing/path"
Required claims that should exist (i.e. with any value) when JWT authentication is enabled for control plane requests
Value should be string with comma separated values, for example: scope,sub
Type: string Default: null
Java Code:
ConfigurationProperties.controlPlaneJWTAuthenticationRequiredClaims(String controlPlaneJWTAuthenticationRequiredClaims)
System Property:
-Dmockserver.controlPlaneJWTAuthenticationRequiredClaims=...
Environment Variable:
MOCKSERVER_CONTROL_PLANE_JWT_AUTHENTICATION_REQUIRED_CLAIMS=...
Property File:
mockserver.controlPlaneJWTAuthenticationRequiredClaims=...
Example:
-Dmockserver.controlPlaneJWTAuthenticationRequiredClaims="/some/existing/path"