Skip to content

Commit 2d7bb4b

Browse files
committed
Add details to JWT authentication document about JSON Web Key Set (JWKS) background reloading feature.
1 parent bd23195 commit 2d7bb4b

File tree

1 file changed

+15
-1
lines changed
  • deploy-manage/users-roles/cluster-or-deployment-auth

1 file changed

+15
-1
lines changed

deploy-manage/users-roles/cluster-or-deployment-auth/jwt.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,19 @@ Client authentication is enabled by default for the JWT realms. Disabling client
121121
: Indicates that {{es}} should use the `RS256` or `HS256` signature algorithms to verify the signature of the JWT from the JWT issuer.
122122

123123
`pkc_jwkset_path`
124-
: The file name or URL to a JSON Web Key Set (JWKS) with the public key material that the JWT Realm uses for verifying token signatures. A value is considered a file name if it does not begin with `https`. The file name is resolved relative to the {{es}} configuration directory. If a URL is provided, then it must begin with `https://` (`http://` is not supported). {{es}} automatically caches the JWK set and will attempt to refresh the JWK set upon signature verification failure, as this might indicate that the JWT Provider has rotated the signing keys.
124+
: The file name or URL to a JSON Web Key Set (JWKS) with the public key material that the JWT Realm uses for verifying token signatures. A value is considered a file name if it does not begin with `https`. The file name is resolved relative to the {{es}} configuration directory. If a URL is provided, then it must begin with `https://` (`http://` is not supported). {{es}} automatically caches the JWK set and will attempt to refresh the JWK set upon signature verification failure, as this might indicate that the JWT Provider has rotated the signing keys. Background JWKS reloading can also be configured with the setting `pkc_jwkset_reload.enabled`.
125+
126+
`pkc_jwkset_reload.enabled`
127+
: Indicates whether JWKS background reloading is enabled (`false`).
128+
129+
`pkc_jwkset_reload.file_interval`
130+
: Specifies the reload interval for file-based JWKS (`5m`).
131+
132+
`pkc_jwkset_reload.url_interval_min`
133+
: Specifies the minimum reload interval for URL-based JWKS. The `Expires` and `Cache-Control` HTTP response headers inform the reload interval. This configuration setting is the lower bound of what is considered, and it is also the default interval in the absence of useful response headers (`1h`).
134+
135+
`pkc_jwkset_reload.url_interval_max`
136+
: Specifies the maximum reload interval for URL-based JWKS. This configuration setting is the upper bound of what is considered from header responses (`5d`).
125137

126138
`claims.principal`
127139
: The name of the JWT claim that contains the user’s principal (username).
@@ -434,6 +446,8 @@ PKC JSON Web Token Key Sets (JWKS) can contain public RSA and EC keys. HMAC JWKS
434446

435447
JWT realms load a PKC JWKS and an HMAC JWKS or HMAC UTF-8 JWK at startup. JWT realms can also reload PKC JWKS contents at runtime; a reload is triggered by signature validation failures.
436448

449+
JWT realms can also be configured to reload a PKC JWKS periodically in the background.
450+
437451
::::{note}
438452
HMAC JWKS or HMAC UTF-8 JWK reloading is not supported at this time.
439453
::::

0 commit comments

Comments
 (0)