diff --git a/_data/wg.yaml b/_data/wg.yaml
index c7c0e702e2d..a1e5af7a83a 100644
--- a/_data/wg.yaml
+++ b/_data/wg.yaml
@@ -1,5 +1,33 @@
---
working-groups:
+ - title: "Test classloading"
+ board-url: "https://github.com/orgs/quarkusio/projects/30"
+ short-description: The goal of this working group is to rewrite Quarkus's test classloading, so that tests are run in the same classloader as the application under tests, and Quarkus extensions can do "Quarkus-y" manipulations of test classes.
+ readme: |
+
At the moment, Quarkus tests are invoked using one classloader, and then executed in a different classloader. This mostly works well, but means some use cases don't work: extensions cannot manipulate test classes in the same way that they do normal application classes. For example, anything run via a JUnit @TestTemplate test case will see the un-transformed class.
+
It also means we have extra user-facing complexity, such as the QuarkusTest*Callbacks](https://quarkus.io/guides/getting-started-testing#enrichment-via-quarkustestcallback):
+
+
While it is possible to use JUnit Jupiter callback interfaces like BeforeEachCallback, you might run into classloading issues because Quarkus has to run tests in a custom classloader which JUnit is not aware of.
+
+
A final benefit is a reduction in the internal complexity of our code. Hopping between classloaders during test execution takes a lot of work, and adds a lot of code! It also is brittle in places. For example, because the hop between classloaders relies on serialization in some cases, it's becoming harder to do as the JVM tightens up security restrictions. We used to rely on xstream, but that stopped working in Java 17. In https://github.com/quarkusio/quarkus/pull/40601, @dmlloyd moved us to use the JBoss Serializer, which works better, but might still be affected by future restrictions on class access.
+
The goal of this working group is to allow test classes to fully participate in the 'quarkification' of classes. The mechanism for this is probably just to load the test classes with the classloader we intend to run them with, so that JUnit sees the 'correct' version of the class.
+
+
Point of contact: @holly-cummins (@Holly Cummins on Zulip)
+ status: on track
+ completed: false
+ last-activity: 2024-11-28
+ last-update-date: 2024-11-25
+ last-update: |
+ Good progress in the past week. Latest CI run: https://github.com/holly-cummins/quarkus/actions/runs/11940609084
+ Down to 8 failing jobs on CI, which is, admittedly, awful, but it’s better than the 10 that were failing before this week. Fixed a bunch of problems in my implementation, some dumb (like typing ’text’ instead of ’test’, some more significant.)
+
+ The next task/blocker is @Nested tests which have a test profile. That means sorting out the contradiction between “load tests using the classloader we will use to execute them,” and “@Nested inner classes always get loaded by the parent’s classloader, which is totally the wrong classloader if there’s a @TestProfile on them”. I fear the solution may involve putting back a bunch of code I thought I was going to be able to delete.
+ point-of-contact: "@holly-cummins (@Holly Cummins on Zulip)"
+ proposal: https://github.com/quarkusio/quarkus/discussions/41867
+ discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20.2330.20Test.20Classloading.20chatter/
- title: "WebSocket Next"
board-url: "https://github.com/orgs/quarkusio/projects/26"
short-description: WebSocket-Next related tasks
@@ -76,34 +104,6 @@ working-groups:
deliverable: Quarkus Insight
point-of-contact: "@cescoffier (@Clement Escoffier on Zulip)"
proposal: https://github.com/quarkusio/quarkus/discussions/41024
- - title: "Test classloading"
- board-url: "https://github.com/orgs/quarkusio/projects/30"
- short-description: The goal of this working group is to rewrite Quarkus's test classloading, so that tests are run in the same classloader as the application under tests, and Quarkus extensions can do "Quarkus-y" manipulations of test classes.
- readme: |
-
At the moment, Quarkus tests are invoked using one classloader, and then executed in a different classloader. This mostly works well, but means some use cases don't work: extensions cannot manipulate test classes in the same way that they do normal application classes. For example, anything run via a JUnit @TestTemplate test case will see the un-transformed class.
-
It also means we have extra user-facing complexity, such as the QuarkusTest*Callbacks](https://quarkus.io/guides/getting-started-testing#enrichment-via-quarkustestcallback):
-
-
While it is possible to use JUnit Jupiter callback interfaces like BeforeEachCallback, you might run into classloading issues because Quarkus has to run tests in a custom classloader which JUnit is not aware of.
-
-
A final benefit is a reduction in the internal complexity of our code. Hopping between classloaders during test execution takes a lot of work, and adds a lot of code! It also is brittle in places. For example, because the hop between classloaders relies on serialization in some cases, it's becoming harder to do as the JVM tightens up security restrictions. We used to rely on xstream, but that stopped working in Java 17. In https://github.com/quarkusio/quarkus/pull/40601, @dmlloyd moved us to use the JBoss Serializer, which works better, but might still be affected by future restrictions on class access.
-
The goal of this working group is to allow test classes to fully participate in the 'quarkification' of classes. The mechanism for this is probably just to load the test classes with the classloader we intend to run them with, so that JUnit sees the 'correct' version of the class.
-
-
Point of contact: @holly-cummins (@Holly Cummins on Zulip)
- status: on track
- completed: false
- last-activity: 2024-11-19
- last-update-date: 2024-11-25
- last-update: |
- Good progress in the past week. Latest CI run: https://github.com/holly-cummins/quarkus/actions/runs/11940609084
- Down to 8 failing jobs on CI, which is, admittedly, awful, but it’s better than the 10 that were failing before this week. Fixed a bunch of problems in my implementation, some dumb (like typing ’text’ instead of ’test’, some more significant.)
-
- The next task/blocker is @Nested tests which have a test profile. That means sorting out the contradiction between “load tests using the classloader we will use to execute them,” and “@Nested inner classes always get loaded by the parent’s classloader, which is totally the wrong classloader if there’s a @TestProfile on them”. I fear the solution may involve putting back a bunch of code I thought I was going to be able to delete.
- point-of-contact: "@holly-cummins (@Holly Cummins on Zulip)"
- proposal: https://github.com/quarkusio/quarkus/discussions/41867
- discussion: https://quarkusio.zulipchat.com/#narrow/channel/187038-dev/topic/WG.20.2330.20Test.20Classloading.20chatter/
- title: "Quarkus 3.15 LTS"
board-url: "https://github.com/orgs/quarkusio/projects/28"
short-description: This WG focuses on defining the issues we would like to have in the next-to-be LTS (Quarkus 3.14/3.15)
diff --git a/_generated-doc/main/config/quarkus-all-config.adoc b/_generated-doc/main/config/quarkus-all-config.adoc
index d9ccd40d143..c62cd89b57a 100644
--- a/_generated-doc/main/config/quarkus-all-config.adoc
+++ b/_generated-doc/main/config/quarkus-all-config.adoc
@@ -14295,7 +14295,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-Origins allowed for CORS Comma separated list of valid URLs, e.g.: http://www.quarkus.io,http://localhost:3000 In case an entry of the list is surrounded by forward slashes, it is interpreted as a regular expression.
+The origins allowed for CORS. A comma-separated list of valid URLs, such as `http://www.quarkus.io,http://localhost:3000`. URLs enclosed in forward slashes are interpreted as regular expressions.
ifdef::add-copy-button-to-env-var[]
@@ -14316,7 +14316,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-HTTP methods allowed for CORS Comma separated list of valid methods. ex: GET,PUT,POST The filter allows any method if this is not set. default: returns any requested method as valid
+The HTTP methods allowed for CORS requests. A comma-separated list of valid HTTP methods, such as `GET,PUT,POST`. If not set, the filter allows any HTTP method by default. Default: Any HTTP request method is allowed.
ifdef::add-copy-button-to-env-var[]
@@ -14337,7 +14337,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-HTTP headers allowed for CORS Comma separated list of valid headers. ex: X-Custom,Content-Disposition The filter allows any header if this is not set. default: returns any requested header as valid
+The HTTP headers allowed for CORS requests. A comma-separated list of valid headers, such as `X-Custom,Content-Disposition`. If not set, the filter allows any header by default. Default: Any HTTP request header is allowed.
ifdef::add-copy-button-to-env-var[]
@@ -14358,7 +14358,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-HTTP headers exposed in CORS Comma separated list of valid headers. ex: X-Custom,Content-Disposition default: empty
+The HTTP headers exposed in CORS responses. A comma-separated list of headers to expose, such as `X-Custom,Content-Disposition`. Default: No headers are exposed.
ifdef::add-copy-button-to-env-var[]
@@ -14379,7 +14379,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-The `Access-Control-Max-Age` response header value indicating how long the results of a pre-flight request can be cached.
+The `Access-Control-Max-Age` response header value in `java.time.Duration` format. Informs the browser how long it can cache the results of a preflight request.
ifdef::add-copy-button-to-env-var[]
@@ -14400,7 +14400,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-The `Access-Control-Allow-Credentials` header is used to tell the browsers to expose the response to front-end JavaScript code when the request’s credentials mode Request.credentials is “include”. The value of this header will default to `true` if `quarkus.http.cors.origins` property is set and there is a match with the precise `Origin` header.
+The `Access-Control-Allow-Credentials` response header. Tells browsers if front-end JavaScript can be allowed to access credentials when the request's credentials mode, `Request.credentials`, is set to `include`. Default: `true` if the `quarkus.http.cors.origins` property is set and matches the precise `Origin` header value.
ifdef::add-copy-button-to-env-var[]
@@ -62939,6 +62939,50 @@ endif::add-copy-button-to-env-var[]
|boolean
|
+a|icon:lock[title=Fixed at build time] [[quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-enabled]] [.property-path]##link:#quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-enabled[`quarkus.micrometer.binder.virtual-threads.enabled`]##
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.micrometer.binder.virtual-threads.enabled+++[]
+endif::add-copy-button-to-config-props[]
+
+
+[.description]
+--
+Virtual Threads metrics support.
+
+Support for virtual threads metrics will be enabled if Micrometer support is enabled, this value is set to `true` (default), the JVM supports virtual threads (Java 21{plus}) and the `quarkus.micrometer.binder-enabled-default` property is true.
+
+
+ifdef::add-copy-button-to-env-var[]
+Environment variable: env_var_with_copy_button:+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_ENABLED+++[]
+endif::add-copy-button-to-env-var[]
+ifndef::add-copy-button-to-env-var[]
+Environment variable: `+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_ENABLED+++`
+endif::add-copy-button-to-env-var[]
+--
+|boolean
+|
+
+a|icon:lock[title=Fixed at build time] [[quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-tags]] [.property-path]##link:#quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-tags[`quarkus.micrometer.binder.virtual-threads.tags`]##
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.micrometer.binder.virtual-threads.tags+++[]
+endif::add-copy-button-to-config-props[]
+
+
+[.description]
+--
+The tags to be added to the metrics. Empty by default. When set, tags are passed as: `key1=value1,key2=value2`.
+
+
+ifdef::add-copy-button-to-env-var[]
+Environment variable: env_var_with_copy_button:+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_TAGS+++[]
+endif::add-copy-button-to-env-var[]
+ifndef::add-copy-button-to-env-var[]
+Environment variable: `+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_TAGS+++`
+endif::add-copy-button-to-env-var[]
+--
+|list of string
+|
+
a|icon:lock[title=Fixed at build time] [[quarkus-micrometer_quarkus-micrometer-binder-system]] [.property-path]##link:#quarkus-micrometer_quarkus-micrometer-binder-system[`quarkus.micrometer.binder.system`]##
ifdef::add-copy-button-to-config-props[]
config_property_copy_button:+++quarkus.micrometer.binder.system+++[]
@@ -69889,6 +69933,11 @@ config_property_copy_button:+++quarkus.oidc-client.auth-server-url+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".auth-server-url`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".auth-server-url+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The base URL of the OpenID Connect (OIDC) server, for example, `https://host:port/auth`. Do not set this property if you use 'quarkus-oidc' and the public key verification (`public-key`) or certificate chain verification only (`certificate-chain`) is required. The OIDC discovery endpoint is called by default by appending a `.well-known/openid-configuration` path to this URL. For Keycloak, use `https://host:port/realms/++{++realm++}++`, replacing `++{++realm++}++` with the Keycloak realm name.
@@ -69910,6 +69959,11 @@ config_property_copy_button:+++quarkus.oidc-client.discovery-enabled+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".discovery-enabled`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".discovery-enabled+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Discovery of the OIDC endpoints. If not enabled, you must configure the OIDC endpoint URLs individually.
@@ -69931,6 +69985,11 @@ config_property_copy_button:+++quarkus.oidc-client.registration-path+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".registration-path`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".registration-path+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The relative path or absolute URL of the OIDC dynamic client registration endpoint. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
@@ -69952,6 +70011,11 @@ config_property_copy_button:+++quarkus.oidc-client.connection-delay+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".connection-delay`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".connection-delay+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The duration to attempt the initial connection to an OIDC server. For example, setting the duration to `20S` allows 10 retries, each 2 seconds apart. This property is only effective when the initial OIDC connection is created. For dropped connections, use the `connection-retry-count` property instead.
@@ -69973,6 +70037,11 @@ config_property_copy_button:+++quarkus.oidc-client.connection-retry-count+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".connection-retry-count`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".connection-retry-count+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The number of times to retry re-establishing an existing OIDC connection if it is temporarily lost. Different from `connection-delay`, which applies only to initial connection attempts. For instance, if a request to the OIDC token endpoint fails due to a connection issue, it will be retried as per this setting.
@@ -69994,6 +70063,11 @@ config_property_copy_button:+++quarkus.oidc-client.connection-timeout+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".connection-timeout`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".connection-timeout+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The number of seconds after which the current OIDC connection request times out.
@@ -70015,6 +70089,11 @@ config_property_copy_button:+++quarkus.oidc-client.use-blocking-dns-lookup+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".use-blocking-dns-lookup`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".use-blocking-dns-lookup+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Whether DNS lookup should be performed on the worker thread. Use this option when you can see logged warnings about blocked Vert.x event loop by HTTP requests to OIDC server.
@@ -70036,6 +70115,11 @@ config_property_copy_button:+++quarkus.oidc-client.max-pool-size+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".max-pool-size`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".max-pool-size+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The maximum size of the connection pool used by the WebClient.
@@ -70057,6 +70141,11 @@ config_property_copy_button:+++quarkus.oidc-client.follow-redirects+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".follow-redirects`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".follow-redirects+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Follow redirects automatically when WebClient gets HTTP 302. When this property is disabled only a single redirect to exactly the same original URI is allowed but only if one or more cookies were set during the redirect request.
@@ -70078,6 +70167,11 @@ config_property_copy_button:+++quarkus.oidc-client.token-path+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".token-path`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".token-path+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The OIDC token endpoint that issues access and refresh tokens; specified as a relative path or absolute URL. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
@@ -70099,6 +70193,11 @@ config_property_copy_button:+++quarkus.oidc-client.revoke-path+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".revoke-path`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".revoke-path+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The relative path or absolute URL of the OIDC token revocation endpoint.
@@ -70120,6 +70219,11 @@ config_property_copy_button:+++quarkus.oidc-client.client-id+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".client-id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".client-id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client id of the application. Each application has a client id that is used to identify the application. Setting the client id is not required if `application-type` is `service` and no token introspection is required.
@@ -70141,6 +70245,11 @@ config_property_copy_button:+++quarkus.oidc-client.client-name+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".client-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".client-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client name of the application. It is meant to represent a human readable description of the application which you may provide when an application (client) is registered in an OpenId Connect provider's dashboard. For example, you can set this property to have more informative log messages which record an activity of the given client.
@@ -70162,6 +70271,11 @@ config_property_copy_button:+++quarkus.oidc-client.id+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
A unique OIDC client identifier. It must be set when OIDC clients are created dynamically and is optional in all other cases.
@@ -70183,6 +70297,11 @@ config_property_copy_button:+++quarkus.oidc-client.client-enabled+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".client-enabled`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".client-enabled+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If this client configuration is enabled.
@@ -70204,6 +70323,11 @@ config_property_copy_button:+++quarkus.oidc-client.scopes+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".scopes`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".scopes+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
List of access token scopes
@@ -70225,6 +70349,11 @@ config_property_copy_button:+++quarkus.oidc-client.refresh-token-time-skew+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".refresh-token-time-skew`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".refresh-token-time-skew+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Refresh token time skew. If this property is enabled then the configured duration is converted to seconds and is added to the current time when checking whether the access token should be refreshed. If the sum is greater than this access token's expiration time then a refresh is going to happen.
@@ -70246,6 +70375,11 @@ config_property_copy_button:+++quarkus.oidc-client.access-token-expires-in+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".access-token-expires-in`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".access-token-expires-in+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Access token expiration period relative to the current time. This property is only checked when an access token grant response does not include an access token expiration property.
@@ -70267,6 +70401,11 @@ config_property_copy_button:+++quarkus.oidc-client.absolute-expires-in+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".absolute-expires-in`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".absolute-expires-in+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If the access token 'expires_in' property should be checked as an absolute time value as opposed to a duration relative to the current time.
@@ -70288,6 +70427,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.type+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.type`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.type+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Grant type
@@ -70309,6 +70453,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.access-token-property++
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.access-token-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.access-token-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Access token property name in a token grant response
@@ -70330,6 +70479,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.refresh-token-property+
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.refresh-token-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-token-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Refresh token property name in a token grant response
@@ -70351,6 +70505,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.expires-in-property+++[
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.expires-in-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.expires-in-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Access token expiry property name in a token grant response
@@ -70372,6 +70531,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.refresh-expires-in-prop
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.refresh-expires-in-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-expires-in-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Refresh token expiry property name in a token grant response
@@ -70393,6 +70557,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant-options."grant-name"+++
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant-options."grant-name"`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant-options."grant-name"+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Grant options
@@ -70414,6 +70583,11 @@ config_property_copy_button:+++quarkus.oidc-client.early-tokens-acquisition+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".early-tokens-acquisition`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".early-tokens-acquisition+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Requires that all filters which use 'OidcClient' acquire the tokens at the post-construct initialization time, possibly long before these tokens are used. This property should be disabled if the access token may expire before it is used for the first time and no refresh token is available.
@@ -70435,6 +70609,11 @@ config_property_copy_button:+++quarkus.oidc-client.headers."headers"+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".headers."headers"`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".headers."headers"+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Custom HTTP headers which have to be sent to the token endpoint
@@ -70460,6 +70639,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.host+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.host`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.host+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The host name or IP address of the Proxy. +
@@ -70482,6 +70666,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.port+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.port`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.port+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The port number of the Proxy. The default value is `80`.
@@ -70503,6 +70692,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.username+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.username`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.username+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The username, if the Proxy needs authentication.
@@ -70524,6 +70718,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.password+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.password`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.password+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The password, if the Proxy needs authentication.
@@ -70550,6 +70749,11 @@ config_property_copy_button:+++quarkus.oidc-client.tls.tls-configuration-name+++
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".tls.tls-configuration-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".tls.tls-configuration-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The name of the TLS configuration to use.
@@ -70580,6 +70784,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.secret+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.secret`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.secret+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client secret used by the `client_secret_basic` authentication method. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required. You can use `client-secret.value` instead, but both properties are mutually exclusive.
@@ -70601,6 +70810,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.val
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.value`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.value+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client secret value. This value is ignored if `credentials.secret` is set. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required.
@@ -70622,6 +70836,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.pro
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.provider.name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
@@ -70643,6 +70862,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.pro
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
@@ -70664,6 +70888,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.pro
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.provider.key`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.key+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider client secret key
@@ -70685,6 +70914,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.met
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.method`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.method+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The authentication method. If the `clientSecret.value` secret is set, this method is `basic` by default.
@@ -70706,6 +70940,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.source+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.source`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.source+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
JWT token source: OIDC provider client or an existing JWT bearer token.
@@ -70727,6 +70966,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If provided, indicates that JWT is signed using a secret key. It is mutually exclusive with `key`, `key-file` and `key-store` properties.
@@ -70748,6 +70992,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret-provid
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret-provider.name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
@@ -70769,6 +71018,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret-provid
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
@@ -70790,6 +71044,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret-provid
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret-provider.key`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.key+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider client secret key
@@ -70811,6 +71070,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
String representation of a private key. If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key-file` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
@@ -70832,6 +71096,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-file+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-file`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-file+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
@@ -70853,6 +71122,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-store-fil
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-store-file`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-file+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If provided, indicates that JWT is signed using a private key from a keystore. It is mutually exclusive with `secret`, `key` and `key-file` properties.
@@ -70874,6 +71148,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-store-pas
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-store-password`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-password+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
A parameter to specify the password of the keystore file.
@@ -70895,6 +71174,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-id+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The private key id or alias.
@@ -70916,6 +71200,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-password+
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-password`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-password+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The private key password.
@@ -70937,6 +71226,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.audience+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.audience`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.audience+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The JWT audience (`aud`) claim value. By default, the audience is set to the address of the OpenId Connect Provider's token endpoint.
@@ -70958,6 +71252,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.token-key-id+
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.token-key-id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.token-key-id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The key identifier of the signing key added as a JWT `kid` header.
@@ -70979,6 +71278,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.issuer+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.issuer`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.issuer+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The issuer of the signing key added as a JWT `iss` claim. The default value is the client id.
@@ -71000,6 +71304,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.subject+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.subject`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.subject+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Subject of the signing key added as a JWT `sub` claim The default value is the client id.
@@ -71021,6 +71330,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.claims."claim
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.claims."claim-name"`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.claims."claim-name"+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Additional claims.
@@ -71042,6 +71356,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.signature-alg
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.signature-algorithm`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.signature-algorithm+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The signature algorithm used for the `key-file` property. Supported values: `RS256` (default), `RS384`, `RS512`, `PS256`, `PS384`, `PS512`, `ES256`, `ES384`, `ES512`, `HS256`, `HS384`, `HS512`.
@@ -71063,6 +71382,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.lifespan+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.lifespan`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.lifespan+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The JWT lifespan in seconds. This value is added to the time at which the JWT was issued to calculate the expiration time.
@@ -71084,1243 +71408,26 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.assertion+++[
endif::add-copy-button-to-config-props[]
-[.description]
---
-If true then the client authentication token is a JWT bearer grant assertion. Instead of producing 'client_assertion' and 'client_assertion_type' form properties, only 'assertion' is produced. This option is only supported by the OIDC client extension.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT_CREDENTIALS_JWT_ASSERTION+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT_CREDENTIALS_JWT_ASSERTION+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`false`
-
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client]] [.section-name.section-level0]##link:#quarkus-oidc-client_section_quarkus-oidc-client[Additional named clients]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-auth-server-url]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-auth-server-url[`quarkus.oidc-client."id".auth-server-url`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".auth-server-url+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The base URL of the OpenID Connect (OIDC) server, for example, `https://host:port/auth`. Do not set this property if you use 'quarkus-oidc' and the public key verification (`public-key`) or certificate chain verification only (`certificate-chain`) is required. The OIDC discovery endpoint is called by default by appending a `.well-known/openid-configuration` path to this URL. For Keycloak, use `https://host:port/realms/++{++realm++}++`, replacing `++{++realm++}++` with the Keycloak realm name.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__AUTH_SERVER_URL+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__AUTH_SERVER_URL+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-discovery-enabled]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-discovery-enabled[`quarkus.oidc-client."id".discovery-enabled`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".discovery-enabled+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Discovery of the OIDC endpoints. If not enabled, you must configure the OIDC endpoint URLs individually.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__DISCOVERY_ENABLED+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__DISCOVERY_ENABLED+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-registration-path]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-registration-path[`quarkus.oidc-client."id".registration-path`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".registration-path+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The relative path or absolute URL of the OIDC dynamic client registration endpoint. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__REGISTRATION_PATH+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__REGISTRATION_PATH+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-connection-delay]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-connection-delay[`quarkus.oidc-client."id".connection-delay`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".connection-delay+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The duration to attempt the initial connection to an OIDC server. For example, setting the duration to `20S` allows 10 retries, each 2 seconds apart. This property is only effective when the initial OIDC connection is created. For dropped connections, use the `connection-retry-count` property instead.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_DELAY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_DELAY+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-all-config[icon:question-circle[title=More information about the Duration format]]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-connection-retry-count]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-connection-retry-count[`quarkus.oidc-client."id".connection-retry-count`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".connection-retry-count+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The number of times to retry re-establishing an existing OIDC connection if it is temporarily lost. Different from `connection-delay`, which applies only to initial connection attempts. For instance, if a request to the OIDC token endpoint fails due to a connection issue, it will be retried as per this setting.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_RETRY_COUNT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_RETRY_COUNT+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|`3`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-connection-timeout]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-connection-timeout[`quarkus.oidc-client."id".connection-timeout`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".connection-timeout+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The number of seconds after which the current OIDC connection request times out.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_TIMEOUT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_TIMEOUT+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-all-config[icon:question-circle[title=More information about the Duration format]]
-|`10S`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-use-blocking-dns-lookup]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-use-blocking-dns-lookup[`quarkus.oidc-client."id".use-blocking-dns-lookup`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".use-blocking-dns-lookup+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Whether DNS lookup should be performed on the worker thread. Use this option when you can see logged warnings about blocked Vert.x event loop by HTTP requests to OIDC server.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__USE_BLOCKING_DNS_LOOKUP+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__USE_BLOCKING_DNS_LOOKUP+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`false`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-max-pool-size]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-max-pool-size[`quarkus.oidc-client."id".max-pool-size`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".max-pool-size+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The maximum size of the connection pool used by the WebClient.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__MAX_POOL_SIZE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__MAX_POOL_SIZE+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-follow-redirects]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-follow-redirects[`quarkus.oidc-client."id".follow-redirects`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".follow-redirects+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Follow redirects automatically when WebClient gets HTTP 302. When this property is disabled only a single redirect to exactly the same original URI is allowed but only if one or more cookies were set during the redirect request.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__FOLLOW_REDIRECTS+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__FOLLOW_REDIRECTS+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client-id-proxy]] [.section-name.section-level1]##link:#quarkus-oidc-client_section_quarkus-oidc-client-id-proxy[HTTP proxy configuration]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-host]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-host[`quarkus.oidc-client."id".proxy.host`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.host+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The host name or IP address of the Proxy. +
-Note: If the OIDC adapter requires a Proxy to talk with the OIDC server (Provider), set this value to enable the usage of a Proxy.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_HOST+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_HOST+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-port]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-port[`quarkus.oidc-client."id".proxy.port`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.port+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The port number of the Proxy. The default value is `80`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_PORT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_PORT+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|`80`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-username]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-username[`quarkus.oidc-client."id".proxy.username`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.username+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The username, if the Proxy needs authentication.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_USERNAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_USERNAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-password]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-password[`quarkus.oidc-client."id".proxy.password`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.password+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The password, if the Proxy needs authentication.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_PASSWORD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_PASSWORD+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client-id-tls]] [.section-name.section-level1]##link:#quarkus-oidc-client_section_quarkus-oidc-client-id-tls[TLS configuration]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-tls-tls-configuration-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-tls-tls-configuration-name[`quarkus.oidc-client."id".tls.tls-configuration-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".tls.tls-configuration-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The name of the TLS configuration to use.
-
-If a name is configured, it uses the configuration from `quarkus.tls..++*++` If a name is configured, but no TLS configuration is found with that name then an error will be thrown.
-
-The default TLS configuration is *not* used by default.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__TLS_TLS_CONFIGURATION_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__TLS_TLS_CONFIGURATION_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-token-path]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-token-path[`quarkus.oidc-client."id".token-path`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".token-path+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The OIDC token endpoint that issues access and refresh tokens; specified as a relative path or absolute URL. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__TOKEN_PATH+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__TOKEN_PATH+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-revoke-path]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-revoke-path[`quarkus.oidc-client."id".revoke-path`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".revoke-path+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The relative path or absolute URL of the OIDC token revocation endpoint.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__REVOKE_PATH+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__REVOKE_PATH+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-client-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-client-id[`quarkus.oidc-client."id".client-id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".client-id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client id of the application. Each application has a client id that is used to identify the application. Setting the client id is not required if `application-type` is `service` and no token introspection is required.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-client-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-client-name[`quarkus.oidc-client."id".client-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".client-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client name of the application. It is meant to represent a human readable description of the application which you may provide when an application (client) is registered in an OpenId Connect provider's dashboard. For example, you can set this property to have more informative log messages which record an activity of the given client.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CLIENT_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CLIENT_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client-id-credentials]] [.section-name.section-level1]##link:#quarkus-oidc-client_section_quarkus-oidc-client-id-credentials[Different authentication options for OIDC client to access OIDC token and other secured endpoints]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-secret]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-secret[`quarkus.oidc-client."id".credentials.secret`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.secret+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client secret used by the `client_secret_basic` authentication method. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required. You can use `client-secret.value` instead, but both properties are mutually exclusive.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_SECRET+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_SECRET+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-value]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-value[`quarkus.oidc-client."id".credentials.client-secret.value`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.value+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client secret value. This value is ignored if `credentials.secret` is set. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_VALUE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_VALUE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-name[`quarkus.oidc-client."id".credentials.client-secret.provider.name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-keyring-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-keyring-name[`quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEYRING_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEYRING_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-key]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-key[`quarkus.oidc-client."id".credentials.client-secret.provider.key`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.key+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider client secret key
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-method]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-method[`quarkus.oidc-client."id".credentials.client-secret.method`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.method+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The authentication method. If the `clientSecret.value` secret is set, this method is `basic` by default.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_METHOD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_METHOD+++`
-endif::add-copy-button-to-env-var[]
---
-a|tooltip:basic[`client_secret_basic` (default)\: The client id and secret are submitted with the HTTP Authorization Basic scheme.], tooltip:post[`client_secret_post`\: The client id and secret are submitted as the `client_id` and `client_secret` form parameters.], tooltip:post-jwt[`client_secret_jwt`\: The client id and generated JWT secret are submitted as the `client_id` and `client_secret` form parameters.], tooltip:query[client id and secret are submitted as HTTP query parameters. This option is only supported by the OIDC extension.]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-source]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-source[`quarkus.oidc-client."id".credentials.jwt.source`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.source+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-JWT token source: OIDC provider client or an existing JWT bearer token.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SOURCE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SOURCE+++`
-endif::add-copy-button-to-env-var[]
---
-a|`client`, `bearer`
-|`client`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret[`quarkus.oidc-client."id".credentials.jwt.secret`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If provided, indicates that JWT is signed using a secret key. It is mutually exclusive with `key`, `key-file` and `key-store` properties.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-name[`quarkus.oidc-client."id".credentials.jwt.secret-provider.name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-keyring-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-keyring-name[`quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEYRING_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEYRING_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-key]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-key[`quarkus.oidc-client."id".credentials.jwt.secret-provider.key`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.key+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider client secret key
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key[`quarkus.oidc-client."id".credentials.jwt.key`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-String representation of a private key. If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key-file` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-file]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-file[`quarkus.oidc-client."id".credentials.jwt.key-file`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-file+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_FILE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_FILE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-file]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-file[`quarkus.oidc-client."id".credentials.jwt.key-store-file`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-file+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If provided, indicates that JWT is signed using a private key from a keystore. It is mutually exclusive with `secret`, `key` and `key-file` properties.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_FILE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_FILE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-password]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-password[`quarkus.oidc-client."id".credentials.jwt.key-store-password`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-password+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-A parameter to specify the password of the keystore file.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_PASSWORD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_PASSWORD+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-id[`quarkus.oidc-client."id".credentials.jwt.key-id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The private key id or alias.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-password]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-password[`quarkus.oidc-client."id".credentials.jwt.key-password`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-password+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The private key password.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_PASSWORD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_PASSWORD+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-audience]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-audience[`quarkus.oidc-client."id".credentials.jwt.audience`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.audience+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The JWT audience (`aud`) claim value. By default, the audience is set to the address of the OpenId Connect Provider's token endpoint.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_AUDIENCE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_AUDIENCE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-token-key-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-token-key-id[`quarkus.oidc-client."id".credentials.jwt.token-key-id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.token-key-id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The key identifier of the signing key added as a JWT `kid` header.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_TOKEN_KEY_ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_TOKEN_KEY_ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-issuer]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-issuer[`quarkus.oidc-client."id".credentials.jwt.issuer`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.issuer+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The issuer of the signing key added as a JWT `iss` claim. The default value is the client id.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ISSUER+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ISSUER+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-subject]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-subject[`quarkus.oidc-client."id".credentials.jwt.subject`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.subject+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Subject of the signing key added as a JWT `sub` claim The default value is the client id.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SUBJECT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SUBJECT+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-claims-claim-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-claims-claim-name[`quarkus.oidc-client."id".credentials.jwt.claims."claim-name"`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.claims."claim-name"+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Additional claims.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_CLAIMS__CLAIM_NAME_+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_CLAIMS__CLAIM_NAME_+++`
-endif::add-copy-button-to-env-var[]
---
-|Map
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-signature-algorithm]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-signature-algorithm[`quarkus.oidc-client."id".credentials.jwt.signature-algorithm`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.signature-algorithm+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The signature algorithm used for the `key-file` property. Supported values: `RS256` (default), `RS384`, `RS512`, `PS256`, `PS384`, `PS512`, `ES256`, `ES384`, `ES512`, `HS256`, `HS384`, `HS512`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SIGNATURE_ALGORITHM+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SIGNATURE_ALGORITHM+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-lifespan]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-lifespan[`quarkus.oidc-client."id".credentials.jwt.lifespan`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.lifespan+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The JWT lifespan in seconds. This value is added to the time at which the JWT was issued to calculate the expiration time.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_LIFESPAN+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_LIFESPAN+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|`10`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-assertion]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-assertion[`quarkus.oidc-client."id".credentials.jwt.assertion`]##
+`quarkus.oidc-client."id".credentials.jwt.assertion`
ifdef::add-copy-button-to-config-props[]
config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.assertion+++[]
endif::add-copy-button-to-config-props[]
-
[.description]
--
If true then the client authentication token is a JWT bearer grant assertion. Instead of producing 'client_assertion' and 'client_assertion_type' form properties, only 'assertion' is produced. This option is only supported by the OIDC client extension.
ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ASSERTION+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ASSERTION+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`false`
-
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-id[`quarkus.oidc-client."id".id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-A unique OIDC client identifier. It must be set when OIDC clients are created dynamically and is optional in all other cases.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-client-enabled]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-client-enabled[`quarkus.oidc-client."id".client-enabled`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".client-enabled+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If this client configuration is enabled.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ENABLED+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ENABLED+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-scopes]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-scopes[`quarkus.oidc-client."id".scopes`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".scopes+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-List of access token scopes
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__SCOPES+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__SCOPES+++`
-endif::add-copy-button-to-env-var[]
---
-|list of string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-refresh-token-time-skew]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-refresh-token-time-skew[`quarkus.oidc-client."id".refresh-token-time-skew`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".refresh-token-time-skew+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Refresh token time skew. If this property is enabled then the configured duration is converted to seconds and is added to the current time when checking whether the access token should be refreshed. If the sum is greater than this access token's expiration time then a refresh is going to happen.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__REFRESH_TOKEN_TIME_SKEW+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__REFRESH_TOKEN_TIME_SKEW+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-all-config[icon:question-circle[title=More information about the Duration format]]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-access-token-expires-in]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-access-token-expires-in[`quarkus.oidc-client."id".access-token-expires-in`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".access-token-expires-in+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Access token expiration period relative to the current time. This property is only checked when an access token grant response does not include an access token expiration property.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__ACCESS_TOKEN_EXPIRES_IN+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__ACCESS_TOKEN_EXPIRES_IN+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-all-config[icon:question-circle[title=More information about the Duration format]]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-absolute-expires-in]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-absolute-expires-in[`quarkus.oidc-client."id".absolute-expires-in`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".absolute-expires-in+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If the access token 'expires_in' property should be checked as an absolute time value as opposed to a duration relative to the current time.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__ABSOLUTE_EXPIRES_IN+++[]
+Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT_CREDENTIALS_JWT_ASSERTION+++[]
endif::add-copy-button-to-env-var[]
ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__ABSOLUTE_EXPIRES_IN+++`
+Environment variable: `+++QUARKUS_OIDC_CLIENT_CREDENTIALS_JWT_ASSERTION+++`
endif::add-copy-button-to-env-var[]
--
|boolean
|`false`
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-type]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-type[`quarkus.oidc-client."id".grant.type`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.type+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Grant type
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_TYPE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_TYPE+++`
-endif::add-copy-button-to-env-var[]
---
-a|tooltip:client['client_credentials' grant requiring an OIDC client authentication only], tooltip:password['password' grant requiring both OIDC client and user ('username' and 'password') authentications], tooltip:code['authorization_code' grant requiring an OIDC client authentication as well as at least 'code' and 'redirect_uri' parameters which must be passed to OidcClient at the token request time.], tooltip:exchange['urn\:ietf\:params\:oauth\:grant-type\:token-exchange' grant requiring an OIDC client authentication as well as at least 'subject_token' parameter which must be passed to OidcClient at the token request time.], tooltip:jwt['urn\:ietf\:params\:oauth\:grant-type\:jwt-bearer' grant requiring an OIDC client authentication as well as at least an 'assertion' parameter which must be passed to OidcClient at the token request time.], tooltip:refresh['refresh_token' grant requiring an OIDC client authentication and a refresh token. Note, OidcClient supports this grant by default if an access token acquisition response contained a refresh token. However, in some cases, the refresh token is provided out of band, for example, it can be shared between several of the confidential client's services, etc. If 'quarkus.oidc-client.grant-type' is set to 'refresh' then `OidcClient` will only support refreshing the tokens.], tooltip:ciba['urn\:openid\:params\:grant-type\:ciba' grant requiring an OIDC client authentication as well as 'auth_req_id' parameter which must be passed to OidcClient at the token request time.], tooltip:device['urn\:ietf\:params\:oauth\:grant-type\:device_code' grant requiring an OIDC client authentication as well as 'device_code' parameter which must be passed to OidcClient at the token request time.]
-|tooltip:client['client_credentials' grant requiring an OIDC client authentication only]
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-access-token-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-access-token-property[`quarkus.oidc-client."id".grant.access-token-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.access-token-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Access token property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_ACCESS_TOKEN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_ACCESS_TOKEN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`access_token`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-token-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-token-property[`quarkus.oidc-client."id".grant.refresh-token-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-token-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Refresh token property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_TOKEN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_TOKEN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`refresh_token`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-expires-in-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-expires-in-property[`quarkus.oidc-client."id".grant.expires-in-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.expires-in-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Access token expiry property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_EXPIRES_IN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_EXPIRES_IN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`expires_in`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-expires-in-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-expires-in-property[`quarkus.oidc-client."id".grant.refresh-expires-in-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-expires-in-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Refresh token expiry property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_EXPIRES_IN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_EXPIRES_IN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`refresh_expires_in`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-options-grant-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-options-grant-name[`quarkus.oidc-client."id".grant-options."grant-name"`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant-options."grant-name"+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Grant options
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_OPTIONS__GRANT_NAME_+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_OPTIONS__GRANT_NAME_+++`
-endif::add-copy-button-to-env-var[]
---
-|Map>
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-early-tokens-acquisition]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-early-tokens-acquisition[`quarkus.oidc-client."id".early-tokens-acquisition`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".early-tokens-acquisition+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Requires that all filters which use 'OidcClient' acquire the tokens at the post-construct initialization time, possibly long before these tokens are used. This property should be disabled if the access token may expire before it is used for the first time and no refresh token is available.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__EARLY_TOKENS_ACQUISITION+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__EARLY_TOKENS_ACQUISITION+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-headers-headers]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-headers-headers[`quarkus.oidc-client."id".headers."headers"`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".headers."headers"+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Custom HTTP headers which have to be sent to the token endpoint
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__HEADERS__HEADERS_+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__HEADERS__HEADERS_+++`
-endif::add-copy-button-to-env-var[]
---
-|Map
-|
-
h|[.extension-name]##OpenID Connect Client integration for GraphQL client##
diff --git a/_generated-doc/main/config/quarkus-micrometer.adoc b/_generated-doc/main/config/quarkus-micrometer.adoc
index b838824285a..952881e3a5e 100644
--- a/_generated-doc/main/config/quarkus-micrometer.adoc
+++ b/_generated-doc/main/config/quarkus-micrometer.adoc
@@ -319,6 +319,50 @@ endif::add-copy-button-to-env-var[]
|boolean
|
+a|icon:lock[title=Fixed at build time] [[quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-enabled]] [.property-path]##link:#quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-enabled[`quarkus.micrometer.binder.virtual-threads.enabled`]##
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.micrometer.binder.virtual-threads.enabled+++[]
+endif::add-copy-button-to-config-props[]
+
+
+[.description]
+--
+Virtual Threads metrics support.
+
+Support for virtual threads metrics will be enabled if Micrometer support is enabled, this value is set to `true` (default), the JVM supports virtual threads (Java 21{plus}) and the `quarkus.micrometer.binder-enabled-default` property is true.
+
+
+ifdef::add-copy-button-to-env-var[]
+Environment variable: env_var_with_copy_button:+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_ENABLED+++[]
+endif::add-copy-button-to-env-var[]
+ifndef::add-copy-button-to-env-var[]
+Environment variable: `+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_ENABLED+++`
+endif::add-copy-button-to-env-var[]
+--
+|boolean
+|
+
+a|icon:lock[title=Fixed at build time] [[quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-tags]] [.property-path]##link:#quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-tags[`quarkus.micrometer.binder.virtual-threads.tags`]##
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.micrometer.binder.virtual-threads.tags+++[]
+endif::add-copy-button-to-config-props[]
+
+
+[.description]
+--
+The tags to be added to the metrics. Empty by default. When set, tags are passed as: `key1=value1,key2=value2`.
+
+
+ifdef::add-copy-button-to-env-var[]
+Environment variable: env_var_with_copy_button:+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_TAGS+++[]
+endif::add-copy-button-to-env-var[]
+ifndef::add-copy-button-to-env-var[]
+Environment variable: `+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_TAGS+++`
+endif::add-copy-button-to-env-var[]
+--
+|list of string
+|
+
a|icon:lock[title=Fixed at build time] [[quarkus-micrometer_quarkus-micrometer-binder-system]] [.property-path]##link:#quarkus-micrometer_quarkus-micrometer-binder-system[`quarkus.micrometer.binder.system`]##
ifdef::add-copy-button-to-config-props[]
config_property_copy_button:+++quarkus.micrometer.binder.system+++[]
diff --git a/_generated-doc/main/config/quarkus-micrometer_quarkus.micrometer.adoc b/_generated-doc/main/config/quarkus-micrometer_quarkus.micrometer.adoc
index b838824285a..952881e3a5e 100644
--- a/_generated-doc/main/config/quarkus-micrometer_quarkus.micrometer.adoc
+++ b/_generated-doc/main/config/quarkus-micrometer_quarkus.micrometer.adoc
@@ -319,6 +319,50 @@ endif::add-copy-button-to-env-var[]
|boolean
|
+a|icon:lock[title=Fixed at build time] [[quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-enabled]] [.property-path]##link:#quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-enabled[`quarkus.micrometer.binder.virtual-threads.enabled`]##
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.micrometer.binder.virtual-threads.enabled+++[]
+endif::add-copy-button-to-config-props[]
+
+
+[.description]
+--
+Virtual Threads metrics support.
+
+Support for virtual threads metrics will be enabled if Micrometer support is enabled, this value is set to `true` (default), the JVM supports virtual threads (Java 21{plus}) and the `quarkus.micrometer.binder-enabled-default` property is true.
+
+
+ifdef::add-copy-button-to-env-var[]
+Environment variable: env_var_with_copy_button:+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_ENABLED+++[]
+endif::add-copy-button-to-env-var[]
+ifndef::add-copy-button-to-env-var[]
+Environment variable: `+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_ENABLED+++`
+endif::add-copy-button-to-env-var[]
+--
+|boolean
+|
+
+a|icon:lock[title=Fixed at build time] [[quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-tags]] [.property-path]##link:#quarkus-micrometer_quarkus-micrometer-binder-virtual-threads-tags[`quarkus.micrometer.binder.virtual-threads.tags`]##
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.micrometer.binder.virtual-threads.tags+++[]
+endif::add-copy-button-to-config-props[]
+
+
+[.description]
+--
+The tags to be added to the metrics. Empty by default. When set, tags are passed as: `key1=value1,key2=value2`.
+
+
+ifdef::add-copy-button-to-env-var[]
+Environment variable: env_var_with_copy_button:+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_TAGS+++[]
+endif::add-copy-button-to-env-var[]
+ifndef::add-copy-button-to-env-var[]
+Environment variable: `+++QUARKUS_MICROMETER_BINDER_VIRTUAL_THREADS_TAGS+++`
+endif::add-copy-button-to-env-var[]
+--
+|list of string
+|
+
a|icon:lock[title=Fixed at build time] [[quarkus-micrometer_quarkus-micrometer-binder-system]] [.property-path]##link:#quarkus-micrometer_quarkus-micrometer-binder-system[`quarkus.micrometer.binder.system`]##
ifdef::add-copy-button-to-config-props[]
config_property_copy_button:+++quarkus.micrometer.binder.system+++[]
diff --git a/_generated-doc/main/config/quarkus-oidc-client.adoc b/_generated-doc/main/config/quarkus-oidc-client.adoc
index 3717e29c8a7..05190c12bc4 100644
--- a/_generated-doc/main/config/quarkus-oidc-client.adoc
+++ b/_generated-doc/main/config/quarkus-oidc-client.adoc
@@ -34,6 +34,11 @@ config_property_copy_button:+++quarkus.oidc-client.auth-server-url+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".auth-server-url`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".auth-server-url+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The base URL of the OpenID Connect (OIDC) server, for example, `https://host:port/auth`. Do not set this property if you use 'quarkus-oidc' and the public key verification (`public-key`) or certificate chain verification only (`certificate-chain`) is required. The OIDC discovery endpoint is called by default by appending a `.well-known/openid-configuration` path to this URL. For Keycloak, use `https://host:port/realms/++{++realm++}++`, replacing `++{++realm++}++` with the Keycloak realm name.
@@ -55,6 +60,11 @@ config_property_copy_button:+++quarkus.oidc-client.discovery-enabled+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".discovery-enabled`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".discovery-enabled+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Discovery of the OIDC endpoints. If not enabled, you must configure the OIDC endpoint URLs individually.
@@ -76,6 +86,11 @@ config_property_copy_button:+++quarkus.oidc-client.registration-path+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".registration-path`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".registration-path+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The relative path or absolute URL of the OIDC dynamic client registration endpoint. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
@@ -97,6 +112,11 @@ config_property_copy_button:+++quarkus.oidc-client.connection-delay+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".connection-delay`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".connection-delay+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The duration to attempt the initial connection to an OIDC server. For example, setting the duration to `20S` allows 10 retries, each 2 seconds apart. This property is only effective when the initial OIDC connection is created. For dropped connections, use the `connection-retry-count` property instead.
@@ -118,6 +138,11 @@ config_property_copy_button:+++quarkus.oidc-client.connection-retry-count+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".connection-retry-count`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".connection-retry-count+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The number of times to retry re-establishing an existing OIDC connection if it is temporarily lost. Different from `connection-delay`, which applies only to initial connection attempts. For instance, if a request to the OIDC token endpoint fails due to a connection issue, it will be retried as per this setting.
@@ -139,6 +164,11 @@ config_property_copy_button:+++quarkus.oidc-client.connection-timeout+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".connection-timeout`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".connection-timeout+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The number of seconds after which the current OIDC connection request times out.
@@ -160,6 +190,11 @@ config_property_copy_button:+++quarkus.oidc-client.use-blocking-dns-lookup+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".use-blocking-dns-lookup`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".use-blocking-dns-lookup+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Whether DNS lookup should be performed on the worker thread. Use this option when you can see logged warnings about blocked Vert.x event loop by HTTP requests to OIDC server.
@@ -181,6 +216,11 @@ config_property_copy_button:+++quarkus.oidc-client.max-pool-size+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".max-pool-size`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".max-pool-size+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The maximum size of the connection pool used by the WebClient.
@@ -202,6 +242,11 @@ config_property_copy_button:+++quarkus.oidc-client.follow-redirects+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".follow-redirects`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".follow-redirects+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Follow redirects automatically when WebClient gets HTTP 302. When this property is disabled only a single redirect to exactly the same original URI is allowed but only if one or more cookies were set during the redirect request.
@@ -223,6 +268,11 @@ config_property_copy_button:+++quarkus.oidc-client.token-path+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".token-path`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".token-path+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The OIDC token endpoint that issues access and refresh tokens; specified as a relative path or absolute URL. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
@@ -244,6 +294,11 @@ config_property_copy_button:+++quarkus.oidc-client.revoke-path+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".revoke-path`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".revoke-path+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The relative path or absolute URL of the OIDC token revocation endpoint.
@@ -265,6 +320,11 @@ config_property_copy_button:+++quarkus.oidc-client.client-id+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".client-id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".client-id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client id of the application. Each application has a client id that is used to identify the application. Setting the client id is not required if `application-type` is `service` and no token introspection is required.
@@ -286,6 +346,11 @@ config_property_copy_button:+++quarkus.oidc-client.client-name+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".client-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".client-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client name of the application. It is meant to represent a human readable description of the application which you may provide when an application (client) is registered in an OpenId Connect provider's dashboard. For example, you can set this property to have more informative log messages which record an activity of the given client.
@@ -307,6 +372,11 @@ config_property_copy_button:+++quarkus.oidc-client.id+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
A unique OIDC client identifier. It must be set when OIDC clients are created dynamically and is optional in all other cases.
@@ -328,6 +398,11 @@ config_property_copy_button:+++quarkus.oidc-client.client-enabled+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".client-enabled`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".client-enabled+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If this client configuration is enabled.
@@ -349,6 +424,11 @@ config_property_copy_button:+++quarkus.oidc-client.scopes+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".scopes`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".scopes+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
List of access token scopes
@@ -370,6 +450,11 @@ config_property_copy_button:+++quarkus.oidc-client.refresh-token-time-skew+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".refresh-token-time-skew`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".refresh-token-time-skew+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Refresh token time skew. If this property is enabled then the configured duration is converted to seconds and is added to the current time when checking whether the access token should be refreshed. If the sum is greater than this access token's expiration time then a refresh is going to happen.
@@ -391,6 +476,11 @@ config_property_copy_button:+++quarkus.oidc-client.access-token-expires-in+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".access-token-expires-in`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".access-token-expires-in+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Access token expiration period relative to the current time. This property is only checked when an access token grant response does not include an access token expiration property.
@@ -412,6 +502,11 @@ config_property_copy_button:+++quarkus.oidc-client.absolute-expires-in+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".absolute-expires-in`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".absolute-expires-in+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If the access token 'expires_in' property should be checked as an absolute time value as opposed to a duration relative to the current time.
@@ -433,6 +528,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.type+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.type`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.type+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Grant type
@@ -454,6 +554,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.access-token-property++
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.access-token-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.access-token-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Access token property name in a token grant response
@@ -475,6 +580,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.refresh-token-property+
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.refresh-token-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-token-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Refresh token property name in a token grant response
@@ -496,6 +606,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.expires-in-property+++[
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.expires-in-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.expires-in-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Access token expiry property name in a token grant response
@@ -517,6 +632,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.refresh-expires-in-prop
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.refresh-expires-in-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-expires-in-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Refresh token expiry property name in a token grant response
@@ -538,6 +658,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant-options."grant-name"+++
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant-options."grant-name"`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant-options."grant-name"+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Grant options
@@ -559,6 +684,11 @@ config_property_copy_button:+++quarkus.oidc-client.early-tokens-acquisition+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".early-tokens-acquisition`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".early-tokens-acquisition+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Requires that all filters which use 'OidcClient' acquire the tokens at the post-construct initialization time, possibly long before these tokens are used. This property should be disabled if the access token may expire before it is used for the first time and no refresh token is available.
@@ -580,6 +710,11 @@ config_property_copy_button:+++quarkus.oidc-client.headers."headers"+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".headers."headers"`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".headers."headers"+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Custom HTTP headers which have to be sent to the token endpoint
@@ -605,6 +740,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.host+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.host`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.host+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The host name or IP address of the Proxy. +
@@ -627,6 +767,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.port+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.port`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.port+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The port number of the Proxy. The default value is `80`.
@@ -648,6 +793,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.username+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.username`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.username+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The username, if the Proxy needs authentication.
@@ -669,6 +819,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.password+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.password`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.password+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The password, if the Proxy needs authentication.
@@ -695,6 +850,11 @@ config_property_copy_button:+++quarkus.oidc-client.tls.tls-configuration-name+++
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".tls.tls-configuration-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".tls.tls-configuration-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The name of the TLS configuration to use.
@@ -725,6 +885,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.secret+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.secret`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.secret+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client secret used by the `client_secret_basic` authentication method. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required. You can use `client-secret.value` instead, but both properties are mutually exclusive.
@@ -746,6 +911,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.val
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.value`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.value+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client secret value. This value is ignored if `credentials.secret` is set. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required.
@@ -767,6 +937,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.pro
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.provider.name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
@@ -788,6 +963,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.pro
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
@@ -809,6 +989,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.pro
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.provider.key`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.key+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider client secret key
@@ -830,6 +1015,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.met
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.method`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.method+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The authentication method. If the `clientSecret.value` secret is set, this method is `basic` by default.
@@ -851,6 +1041,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.source+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.source`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.source+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
JWT token source: OIDC provider client or an existing JWT bearer token.
@@ -872,6 +1067,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If provided, indicates that JWT is signed using a secret key. It is mutually exclusive with `key`, `key-file` and `key-store` properties.
@@ -893,6 +1093,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret-provid
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret-provider.name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
@@ -914,6 +1119,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret-provid
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
@@ -935,6 +1145,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret-provid
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret-provider.key`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.key+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider client secret key
@@ -956,6 +1171,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
String representation of a private key. If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key-file` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
@@ -977,6 +1197,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-file+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-file`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-file+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
@@ -998,6 +1223,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-store-fil
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-store-file`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-file+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If provided, indicates that JWT is signed using a private key from a keystore. It is mutually exclusive with `secret`, `key` and `key-file` properties.
@@ -1019,6 +1249,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-store-pas
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-store-password`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-password+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
A parameter to specify the password of the keystore file.
@@ -1040,6 +1275,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-id+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The private key id or alias.
@@ -1061,6 +1301,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-password+
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-password`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-password+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The private key password.
@@ -1082,6 +1327,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.audience+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.audience`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.audience+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The JWT audience (`aud`) claim value. By default, the audience is set to the address of the OpenId Connect Provider's token endpoint.
@@ -1103,6 +1353,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.token-key-id+
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.token-key-id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.token-key-id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The key identifier of the signing key added as a JWT `kid` header.
@@ -1124,6 +1379,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.issuer+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.issuer`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.issuer+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The issuer of the signing key added as a JWT `iss` claim. The default value is the client id.
@@ -1145,6 +1405,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.subject+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.subject`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.subject+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Subject of the signing key added as a JWT `sub` claim The default value is the client id.
@@ -1166,6 +1431,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.claims."claim
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.claims."claim-name"`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.claims."claim-name"+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Additional claims.
@@ -1187,6 +1457,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.signature-alg
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.signature-algorithm`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.signature-algorithm+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The signature algorithm used for the `key-file` property. Supported values: `RS256` (default), `RS384`, `RS512`, `PS256`, `PS384`, `PS512`, `ES256`, `ES384`, `ES512`, `HS256`, `HS384`, `HS512`.
@@ -1208,6 +1483,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.lifespan+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.lifespan`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.lifespan+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The JWT lifespan in seconds. This value is added to the time at which the JWT was issued to calculate the expiration time.
@@ -1229,6 +1509,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.assertion+++[
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.assertion`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.assertion+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If true then the client authentication token is a JWT bearer grant assertion. Instead of producing 'client_assertion' and 'client_assertion_type' form properties, only 'assertion' is produced. This option is only supported by the OIDC client extension.
@@ -1245,1228 +1530,6 @@ endif::add-copy-button-to-env-var[]
|`false`
-h|[[quarkus-oidc-client_section_quarkus-oidc-client]] [.section-name.section-level0]##link:#quarkus-oidc-client_section_quarkus-oidc-client[Additional named clients]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-auth-server-url]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-auth-server-url[`quarkus.oidc-client."id".auth-server-url`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".auth-server-url+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The base URL of the OpenID Connect (OIDC) server, for example, `https://host:port/auth`. Do not set this property if you use 'quarkus-oidc' and the public key verification (`public-key`) or certificate chain verification only (`certificate-chain`) is required. The OIDC discovery endpoint is called by default by appending a `.well-known/openid-configuration` path to this URL. For Keycloak, use `https://host:port/realms/++{++realm++}++`, replacing `++{++realm++}++` with the Keycloak realm name.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__AUTH_SERVER_URL+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__AUTH_SERVER_URL+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-discovery-enabled]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-discovery-enabled[`quarkus.oidc-client."id".discovery-enabled`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".discovery-enabled+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Discovery of the OIDC endpoints. If not enabled, you must configure the OIDC endpoint URLs individually.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__DISCOVERY_ENABLED+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__DISCOVERY_ENABLED+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-registration-path]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-registration-path[`quarkus.oidc-client."id".registration-path`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".registration-path+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The relative path or absolute URL of the OIDC dynamic client registration endpoint. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__REGISTRATION_PATH+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__REGISTRATION_PATH+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-connection-delay]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-connection-delay[`quarkus.oidc-client."id".connection-delay`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".connection-delay+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The duration to attempt the initial connection to an OIDC server. For example, setting the duration to `20S` allows 10 retries, each 2 seconds apart. This property is only effective when the initial OIDC connection is created. For dropped connections, use the `connection-retry-count` property instead.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_DELAY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_DELAY+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-quarkus-oidc-client_quarkus-oidc-client[icon:question-circle[title=More information about the Duration format]]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-connection-retry-count]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-connection-retry-count[`quarkus.oidc-client."id".connection-retry-count`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".connection-retry-count+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The number of times to retry re-establishing an existing OIDC connection if it is temporarily lost. Different from `connection-delay`, which applies only to initial connection attempts. For instance, if a request to the OIDC token endpoint fails due to a connection issue, it will be retried as per this setting.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_RETRY_COUNT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_RETRY_COUNT+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|`3`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-connection-timeout]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-connection-timeout[`quarkus.oidc-client."id".connection-timeout`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".connection-timeout+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The number of seconds after which the current OIDC connection request times out.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_TIMEOUT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_TIMEOUT+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-quarkus-oidc-client_quarkus-oidc-client[icon:question-circle[title=More information about the Duration format]]
-|`10S`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-use-blocking-dns-lookup]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-use-blocking-dns-lookup[`quarkus.oidc-client."id".use-blocking-dns-lookup`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".use-blocking-dns-lookup+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Whether DNS lookup should be performed on the worker thread. Use this option when you can see logged warnings about blocked Vert.x event loop by HTTP requests to OIDC server.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__USE_BLOCKING_DNS_LOOKUP+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__USE_BLOCKING_DNS_LOOKUP+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`false`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-max-pool-size]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-max-pool-size[`quarkus.oidc-client."id".max-pool-size`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".max-pool-size+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The maximum size of the connection pool used by the WebClient.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__MAX_POOL_SIZE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__MAX_POOL_SIZE+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-follow-redirects]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-follow-redirects[`quarkus.oidc-client."id".follow-redirects`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".follow-redirects+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Follow redirects automatically when WebClient gets HTTP 302. When this property is disabled only a single redirect to exactly the same original URI is allowed but only if one or more cookies were set during the redirect request.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__FOLLOW_REDIRECTS+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__FOLLOW_REDIRECTS+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client-id-proxy]] [.section-name.section-level1]##link:#quarkus-oidc-client_section_quarkus-oidc-client-id-proxy[HTTP proxy configuration]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-host]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-host[`quarkus.oidc-client."id".proxy.host`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.host+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The host name or IP address of the Proxy. +
-Note: If the OIDC adapter requires a Proxy to talk with the OIDC server (Provider), set this value to enable the usage of a Proxy.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_HOST+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_HOST+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-port]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-port[`quarkus.oidc-client."id".proxy.port`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.port+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The port number of the Proxy. The default value is `80`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_PORT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_PORT+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|`80`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-username]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-username[`quarkus.oidc-client."id".proxy.username`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.username+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The username, if the Proxy needs authentication.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_USERNAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_USERNAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-password]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-password[`quarkus.oidc-client."id".proxy.password`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.password+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The password, if the Proxy needs authentication.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_PASSWORD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_PASSWORD+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client-id-tls]] [.section-name.section-level1]##link:#quarkus-oidc-client_section_quarkus-oidc-client-id-tls[TLS configuration]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-tls-tls-configuration-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-tls-tls-configuration-name[`quarkus.oidc-client."id".tls.tls-configuration-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".tls.tls-configuration-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The name of the TLS configuration to use.
-
-If a name is configured, it uses the configuration from `quarkus.tls..++*++` If a name is configured, but no TLS configuration is found with that name then an error will be thrown.
-
-The default TLS configuration is *not* used by default.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__TLS_TLS_CONFIGURATION_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__TLS_TLS_CONFIGURATION_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-token-path]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-token-path[`quarkus.oidc-client."id".token-path`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".token-path+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The OIDC token endpoint that issues access and refresh tokens; specified as a relative path or absolute URL. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__TOKEN_PATH+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__TOKEN_PATH+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-revoke-path]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-revoke-path[`quarkus.oidc-client."id".revoke-path`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".revoke-path+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The relative path or absolute URL of the OIDC token revocation endpoint.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__REVOKE_PATH+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__REVOKE_PATH+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-client-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-client-id[`quarkus.oidc-client."id".client-id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".client-id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client id of the application. Each application has a client id that is used to identify the application. Setting the client id is not required if `application-type` is `service` and no token introspection is required.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-client-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-client-name[`quarkus.oidc-client."id".client-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".client-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client name of the application. It is meant to represent a human readable description of the application which you may provide when an application (client) is registered in an OpenId Connect provider's dashboard. For example, you can set this property to have more informative log messages which record an activity of the given client.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CLIENT_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CLIENT_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client-id-credentials]] [.section-name.section-level1]##link:#quarkus-oidc-client_section_quarkus-oidc-client-id-credentials[Different authentication options for OIDC client to access OIDC token and other secured endpoints]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-secret]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-secret[`quarkus.oidc-client."id".credentials.secret`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.secret+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client secret used by the `client_secret_basic` authentication method. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required. You can use `client-secret.value` instead, but both properties are mutually exclusive.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_SECRET+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_SECRET+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-value]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-value[`quarkus.oidc-client."id".credentials.client-secret.value`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.value+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client secret value. This value is ignored if `credentials.secret` is set. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_VALUE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_VALUE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-name[`quarkus.oidc-client."id".credentials.client-secret.provider.name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-keyring-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-keyring-name[`quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEYRING_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEYRING_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-key]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-key[`quarkus.oidc-client."id".credentials.client-secret.provider.key`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.key+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider client secret key
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-method]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-method[`quarkus.oidc-client."id".credentials.client-secret.method`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.method+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The authentication method. If the `clientSecret.value` secret is set, this method is `basic` by default.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_METHOD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_METHOD+++`
-endif::add-copy-button-to-env-var[]
---
-a|tooltip:basic[`client_secret_basic` (default)\: The client id and secret are submitted with the HTTP Authorization Basic scheme.], tooltip:post[`client_secret_post`\: The client id and secret are submitted as the `client_id` and `client_secret` form parameters.], tooltip:post-jwt[`client_secret_jwt`\: The client id and generated JWT secret are submitted as the `client_id` and `client_secret` form parameters.], tooltip:query[client id and secret are submitted as HTTP query parameters. This option is only supported by the OIDC extension.]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-source]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-source[`quarkus.oidc-client."id".credentials.jwt.source`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.source+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-JWT token source: OIDC provider client or an existing JWT bearer token.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SOURCE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SOURCE+++`
-endif::add-copy-button-to-env-var[]
---
-a|`client`, `bearer`
-|`client`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret[`quarkus.oidc-client."id".credentials.jwt.secret`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If provided, indicates that JWT is signed using a secret key. It is mutually exclusive with `key`, `key-file` and `key-store` properties.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-name[`quarkus.oidc-client."id".credentials.jwt.secret-provider.name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-keyring-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-keyring-name[`quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEYRING_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEYRING_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-key]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-key[`quarkus.oidc-client."id".credentials.jwt.secret-provider.key`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.key+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider client secret key
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key[`quarkus.oidc-client."id".credentials.jwt.key`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-String representation of a private key. If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key-file` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-file]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-file[`quarkus.oidc-client."id".credentials.jwt.key-file`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-file+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_FILE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_FILE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-file]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-file[`quarkus.oidc-client."id".credentials.jwt.key-store-file`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-file+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If provided, indicates that JWT is signed using a private key from a keystore. It is mutually exclusive with `secret`, `key` and `key-file` properties.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_FILE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_FILE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-password]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-password[`quarkus.oidc-client."id".credentials.jwt.key-store-password`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-password+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-A parameter to specify the password of the keystore file.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_PASSWORD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_PASSWORD+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-id[`quarkus.oidc-client."id".credentials.jwt.key-id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The private key id or alias.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-password]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-password[`quarkus.oidc-client."id".credentials.jwt.key-password`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-password+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The private key password.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_PASSWORD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_PASSWORD+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-audience]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-audience[`quarkus.oidc-client."id".credentials.jwt.audience`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.audience+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The JWT audience (`aud`) claim value. By default, the audience is set to the address of the OpenId Connect Provider's token endpoint.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_AUDIENCE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_AUDIENCE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-token-key-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-token-key-id[`quarkus.oidc-client."id".credentials.jwt.token-key-id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.token-key-id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The key identifier of the signing key added as a JWT `kid` header.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_TOKEN_KEY_ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_TOKEN_KEY_ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-issuer]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-issuer[`quarkus.oidc-client."id".credentials.jwt.issuer`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.issuer+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The issuer of the signing key added as a JWT `iss` claim. The default value is the client id.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ISSUER+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ISSUER+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-subject]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-subject[`quarkus.oidc-client."id".credentials.jwt.subject`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.subject+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Subject of the signing key added as a JWT `sub` claim The default value is the client id.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SUBJECT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SUBJECT+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-claims-claim-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-claims-claim-name[`quarkus.oidc-client."id".credentials.jwt.claims."claim-name"`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.claims."claim-name"+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Additional claims.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_CLAIMS__CLAIM_NAME_+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_CLAIMS__CLAIM_NAME_+++`
-endif::add-copy-button-to-env-var[]
---
-|Map
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-signature-algorithm]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-signature-algorithm[`quarkus.oidc-client."id".credentials.jwt.signature-algorithm`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.signature-algorithm+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The signature algorithm used for the `key-file` property. Supported values: `RS256` (default), `RS384`, `RS512`, `PS256`, `PS384`, `PS512`, `ES256`, `ES384`, `ES512`, `HS256`, `HS384`, `HS512`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SIGNATURE_ALGORITHM+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SIGNATURE_ALGORITHM+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-lifespan]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-lifespan[`quarkus.oidc-client."id".credentials.jwt.lifespan`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.lifespan+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The JWT lifespan in seconds. This value is added to the time at which the JWT was issued to calculate the expiration time.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_LIFESPAN+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_LIFESPAN+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|`10`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-assertion]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-assertion[`quarkus.oidc-client."id".credentials.jwt.assertion`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.assertion+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If true then the client authentication token is a JWT bearer grant assertion. Instead of producing 'client_assertion' and 'client_assertion_type' form properties, only 'assertion' is produced. This option is only supported by the OIDC client extension.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ASSERTION+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ASSERTION+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`false`
-
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-id[`quarkus.oidc-client."id".id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-A unique OIDC client identifier. It must be set when OIDC clients are created dynamically and is optional in all other cases.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-client-enabled]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-client-enabled[`quarkus.oidc-client."id".client-enabled`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".client-enabled+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If this client configuration is enabled.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ENABLED+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ENABLED+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-scopes]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-scopes[`quarkus.oidc-client."id".scopes`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".scopes+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-List of access token scopes
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__SCOPES+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__SCOPES+++`
-endif::add-copy-button-to-env-var[]
---
-|list of string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-refresh-token-time-skew]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-refresh-token-time-skew[`quarkus.oidc-client."id".refresh-token-time-skew`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".refresh-token-time-skew+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Refresh token time skew. If this property is enabled then the configured duration is converted to seconds and is added to the current time when checking whether the access token should be refreshed. If the sum is greater than this access token's expiration time then a refresh is going to happen.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__REFRESH_TOKEN_TIME_SKEW+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__REFRESH_TOKEN_TIME_SKEW+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-quarkus-oidc-client_quarkus-oidc-client[icon:question-circle[title=More information about the Duration format]]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-access-token-expires-in]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-access-token-expires-in[`quarkus.oidc-client."id".access-token-expires-in`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".access-token-expires-in+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Access token expiration period relative to the current time. This property is only checked when an access token grant response does not include an access token expiration property.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__ACCESS_TOKEN_EXPIRES_IN+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__ACCESS_TOKEN_EXPIRES_IN+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-quarkus-oidc-client_quarkus-oidc-client[icon:question-circle[title=More information about the Duration format]]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-absolute-expires-in]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-absolute-expires-in[`quarkus.oidc-client."id".absolute-expires-in`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".absolute-expires-in+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If the access token 'expires_in' property should be checked as an absolute time value as opposed to a duration relative to the current time.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__ABSOLUTE_EXPIRES_IN+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__ABSOLUTE_EXPIRES_IN+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`false`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-type]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-type[`quarkus.oidc-client."id".grant.type`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.type+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Grant type
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_TYPE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_TYPE+++`
-endif::add-copy-button-to-env-var[]
---
-a|tooltip:client['client_credentials' grant requiring an OIDC client authentication only], tooltip:password['password' grant requiring both OIDC client and user ('username' and 'password') authentications], tooltip:code['authorization_code' grant requiring an OIDC client authentication as well as at least 'code' and 'redirect_uri' parameters which must be passed to OidcClient at the token request time.], tooltip:exchange['urn\:ietf\:params\:oauth\:grant-type\:token-exchange' grant requiring an OIDC client authentication as well as at least 'subject_token' parameter which must be passed to OidcClient at the token request time.], tooltip:jwt['urn\:ietf\:params\:oauth\:grant-type\:jwt-bearer' grant requiring an OIDC client authentication as well as at least an 'assertion' parameter which must be passed to OidcClient at the token request time.], tooltip:refresh['refresh_token' grant requiring an OIDC client authentication and a refresh token. Note, OidcClient supports this grant by default if an access token acquisition response contained a refresh token. However, in some cases, the refresh token is provided out of band, for example, it can be shared between several of the confidential client's services, etc. If 'quarkus.oidc-client.grant-type' is set to 'refresh' then `OidcClient` will only support refreshing the tokens.], tooltip:ciba['urn\:openid\:params\:grant-type\:ciba' grant requiring an OIDC client authentication as well as 'auth_req_id' parameter which must be passed to OidcClient at the token request time.], tooltip:device['urn\:ietf\:params\:oauth\:grant-type\:device_code' grant requiring an OIDC client authentication as well as 'device_code' parameter which must be passed to OidcClient at the token request time.]
-|tooltip:client['client_credentials' grant requiring an OIDC client authentication only]
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-access-token-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-access-token-property[`quarkus.oidc-client."id".grant.access-token-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.access-token-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Access token property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_ACCESS_TOKEN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_ACCESS_TOKEN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`access_token`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-token-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-token-property[`quarkus.oidc-client."id".grant.refresh-token-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-token-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Refresh token property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_TOKEN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_TOKEN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`refresh_token`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-expires-in-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-expires-in-property[`quarkus.oidc-client."id".grant.expires-in-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.expires-in-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Access token expiry property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_EXPIRES_IN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_EXPIRES_IN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`expires_in`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-expires-in-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-expires-in-property[`quarkus.oidc-client."id".grant.refresh-expires-in-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-expires-in-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Refresh token expiry property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_EXPIRES_IN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_EXPIRES_IN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`refresh_expires_in`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-options-grant-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-options-grant-name[`quarkus.oidc-client."id".grant-options."grant-name"`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant-options."grant-name"+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Grant options
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_OPTIONS__GRANT_NAME_+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_OPTIONS__GRANT_NAME_+++`
-endif::add-copy-button-to-env-var[]
---
-|Map>
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-early-tokens-acquisition]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-early-tokens-acquisition[`quarkus.oidc-client."id".early-tokens-acquisition`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".early-tokens-acquisition+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Requires that all filters which use 'OidcClient' acquire the tokens at the post-construct initialization time, possibly long before these tokens are used. This property should be disabled if the access token may expire before it is used for the first time and no refresh token is available.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__EARLY_TOKENS_ACQUISITION+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__EARLY_TOKENS_ACQUISITION+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-headers-headers]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-headers-headers[`quarkus.oidc-client."id".headers."headers"`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".headers."headers"+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Custom HTTP headers which have to be sent to the token endpoint
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__HEADERS__HEADERS_+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__HEADERS__HEADERS_+++`
-endif::add-copy-button-to-env-var[]
---
-|Map
-|
-
-
|===
ifndef::no-duration-note[]
diff --git a/_generated-doc/main/config/quarkus-oidc-client_quarkus.oidc-client.adoc b/_generated-doc/main/config/quarkus-oidc-client_quarkus.oidc-client.adoc
index 3717e29c8a7..05190c12bc4 100644
--- a/_generated-doc/main/config/quarkus-oidc-client_quarkus.oidc-client.adoc
+++ b/_generated-doc/main/config/quarkus-oidc-client_quarkus.oidc-client.adoc
@@ -34,6 +34,11 @@ config_property_copy_button:+++quarkus.oidc-client.auth-server-url+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".auth-server-url`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".auth-server-url+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The base URL of the OpenID Connect (OIDC) server, for example, `https://host:port/auth`. Do not set this property if you use 'quarkus-oidc' and the public key verification (`public-key`) or certificate chain verification only (`certificate-chain`) is required. The OIDC discovery endpoint is called by default by appending a `.well-known/openid-configuration` path to this URL. For Keycloak, use `https://host:port/realms/++{++realm++}++`, replacing `++{++realm++}++` with the Keycloak realm name.
@@ -55,6 +60,11 @@ config_property_copy_button:+++quarkus.oidc-client.discovery-enabled+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".discovery-enabled`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".discovery-enabled+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Discovery of the OIDC endpoints. If not enabled, you must configure the OIDC endpoint URLs individually.
@@ -76,6 +86,11 @@ config_property_copy_button:+++quarkus.oidc-client.registration-path+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".registration-path`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".registration-path+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The relative path or absolute URL of the OIDC dynamic client registration endpoint. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
@@ -97,6 +112,11 @@ config_property_copy_button:+++quarkus.oidc-client.connection-delay+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".connection-delay`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".connection-delay+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The duration to attempt the initial connection to an OIDC server. For example, setting the duration to `20S` allows 10 retries, each 2 seconds apart. This property is only effective when the initial OIDC connection is created. For dropped connections, use the `connection-retry-count` property instead.
@@ -118,6 +138,11 @@ config_property_copy_button:+++quarkus.oidc-client.connection-retry-count+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".connection-retry-count`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".connection-retry-count+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The number of times to retry re-establishing an existing OIDC connection if it is temporarily lost. Different from `connection-delay`, which applies only to initial connection attempts. For instance, if a request to the OIDC token endpoint fails due to a connection issue, it will be retried as per this setting.
@@ -139,6 +164,11 @@ config_property_copy_button:+++quarkus.oidc-client.connection-timeout+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".connection-timeout`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".connection-timeout+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The number of seconds after which the current OIDC connection request times out.
@@ -160,6 +190,11 @@ config_property_copy_button:+++quarkus.oidc-client.use-blocking-dns-lookup+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".use-blocking-dns-lookup`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".use-blocking-dns-lookup+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Whether DNS lookup should be performed on the worker thread. Use this option when you can see logged warnings about blocked Vert.x event loop by HTTP requests to OIDC server.
@@ -181,6 +216,11 @@ config_property_copy_button:+++quarkus.oidc-client.max-pool-size+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".max-pool-size`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".max-pool-size+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The maximum size of the connection pool used by the WebClient.
@@ -202,6 +242,11 @@ config_property_copy_button:+++quarkus.oidc-client.follow-redirects+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".follow-redirects`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".follow-redirects+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Follow redirects automatically when WebClient gets HTTP 302. When this property is disabled only a single redirect to exactly the same original URI is allowed but only if one or more cookies were set during the redirect request.
@@ -223,6 +268,11 @@ config_property_copy_button:+++quarkus.oidc-client.token-path+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".token-path`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".token-path+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The OIDC token endpoint that issues access and refresh tokens; specified as a relative path or absolute URL. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
@@ -244,6 +294,11 @@ config_property_copy_button:+++quarkus.oidc-client.revoke-path+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".revoke-path`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".revoke-path+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The relative path or absolute URL of the OIDC token revocation endpoint.
@@ -265,6 +320,11 @@ config_property_copy_button:+++quarkus.oidc-client.client-id+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".client-id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".client-id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client id of the application. Each application has a client id that is used to identify the application. Setting the client id is not required if `application-type` is `service` and no token introspection is required.
@@ -286,6 +346,11 @@ config_property_copy_button:+++quarkus.oidc-client.client-name+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".client-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".client-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client name of the application. It is meant to represent a human readable description of the application which you may provide when an application (client) is registered in an OpenId Connect provider's dashboard. For example, you can set this property to have more informative log messages which record an activity of the given client.
@@ -307,6 +372,11 @@ config_property_copy_button:+++quarkus.oidc-client.id+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
A unique OIDC client identifier. It must be set when OIDC clients are created dynamically and is optional in all other cases.
@@ -328,6 +398,11 @@ config_property_copy_button:+++quarkus.oidc-client.client-enabled+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".client-enabled`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".client-enabled+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If this client configuration is enabled.
@@ -349,6 +424,11 @@ config_property_copy_button:+++quarkus.oidc-client.scopes+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".scopes`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".scopes+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
List of access token scopes
@@ -370,6 +450,11 @@ config_property_copy_button:+++quarkus.oidc-client.refresh-token-time-skew+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".refresh-token-time-skew`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".refresh-token-time-skew+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Refresh token time skew. If this property is enabled then the configured duration is converted to seconds and is added to the current time when checking whether the access token should be refreshed. If the sum is greater than this access token's expiration time then a refresh is going to happen.
@@ -391,6 +476,11 @@ config_property_copy_button:+++quarkus.oidc-client.access-token-expires-in+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".access-token-expires-in`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".access-token-expires-in+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Access token expiration period relative to the current time. This property is only checked when an access token grant response does not include an access token expiration property.
@@ -412,6 +502,11 @@ config_property_copy_button:+++quarkus.oidc-client.absolute-expires-in+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".absolute-expires-in`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".absolute-expires-in+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If the access token 'expires_in' property should be checked as an absolute time value as opposed to a duration relative to the current time.
@@ -433,6 +528,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.type+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.type`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.type+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Grant type
@@ -454,6 +554,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.access-token-property++
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.access-token-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.access-token-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Access token property name in a token grant response
@@ -475,6 +580,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.refresh-token-property+
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.refresh-token-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-token-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Refresh token property name in a token grant response
@@ -496,6 +606,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.expires-in-property+++[
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.expires-in-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.expires-in-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Access token expiry property name in a token grant response
@@ -517,6 +632,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant.refresh-expires-in-prop
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant.refresh-expires-in-property`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-expires-in-property+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Refresh token expiry property name in a token grant response
@@ -538,6 +658,11 @@ config_property_copy_button:+++quarkus.oidc-client.grant-options."grant-name"+++
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".grant-options."grant-name"`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".grant-options."grant-name"+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Grant options
@@ -559,6 +684,11 @@ config_property_copy_button:+++quarkus.oidc-client.early-tokens-acquisition+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".early-tokens-acquisition`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".early-tokens-acquisition+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Requires that all filters which use 'OidcClient' acquire the tokens at the post-construct initialization time, possibly long before these tokens are used. This property should be disabled if the access token may expire before it is used for the first time and no refresh token is available.
@@ -580,6 +710,11 @@ config_property_copy_button:+++quarkus.oidc-client.headers."headers"+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".headers."headers"`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".headers."headers"+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Custom HTTP headers which have to be sent to the token endpoint
@@ -605,6 +740,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.host+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.host`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.host+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The host name or IP address of the Proxy. +
@@ -627,6 +767,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.port+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.port`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.port+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The port number of the Proxy. The default value is `80`.
@@ -648,6 +793,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.username+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.username`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.username+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The username, if the Proxy needs authentication.
@@ -669,6 +819,11 @@ config_property_copy_button:+++quarkus.oidc-client.proxy.password+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".proxy.password`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".proxy.password+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The password, if the Proxy needs authentication.
@@ -695,6 +850,11 @@ config_property_copy_button:+++quarkus.oidc-client.tls.tls-configuration-name+++
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".tls.tls-configuration-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".tls.tls-configuration-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The name of the TLS configuration to use.
@@ -725,6 +885,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.secret+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.secret`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.secret+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client secret used by the `client_secret_basic` authentication method. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required. You can use `client-secret.value` instead, but both properties are mutually exclusive.
@@ -746,6 +911,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.val
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.value`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.value+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The client secret value. This value is ignored if `credentials.secret` is set. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required.
@@ -767,6 +937,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.pro
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.provider.name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
@@ -788,6 +963,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.pro
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
@@ -809,6 +989,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.pro
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.provider.key`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.key+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider client secret key
@@ -830,6 +1015,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.client-secret.met
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.client-secret.method`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.method+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The authentication method. If the `clientSecret.value` secret is set, this method is `basic` by default.
@@ -851,6 +1041,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.source+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.source`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.source+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
JWT token source: OIDC provider client or an existing JWT bearer token.
@@ -872,6 +1067,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If provided, indicates that JWT is signed using a secret key. It is mutually exclusive with `key`, `key-file` and `key-store` properties.
@@ -893,6 +1093,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret-provid
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret-provider.name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
@@ -914,6 +1119,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret-provid
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
@@ -935,6 +1145,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.secret-provid
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.secret-provider.key`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.key+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The CredentialsProvider client secret key
@@ -956,6 +1171,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
String representation of a private key. If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key-file` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
@@ -977,6 +1197,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-file+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-file`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-file+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
@@ -998,6 +1223,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-store-fil
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-store-file`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-file+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If provided, indicates that JWT is signed using a private key from a keystore. It is mutually exclusive with `secret`, `key` and `key-file` properties.
@@ -1019,6 +1249,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-store-pas
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-store-password`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-password+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
A parameter to specify the password of the keystore file.
@@ -1040,6 +1275,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-id+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The private key id or alias.
@@ -1061,6 +1301,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.key-password+
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.key-password`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-password+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The private key password.
@@ -1082,6 +1327,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.audience+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.audience`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.audience+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The JWT audience (`aud`) claim value. By default, the audience is set to the address of the OpenId Connect Provider's token endpoint.
@@ -1103,6 +1353,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.token-key-id+
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.token-key-id`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.token-key-id+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The key identifier of the signing key added as a JWT `kid` header.
@@ -1124,6 +1379,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.issuer+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.issuer`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.issuer+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The issuer of the signing key added as a JWT `iss` claim. The default value is the client id.
@@ -1145,6 +1405,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.subject+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.subject`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.subject+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Subject of the signing key added as a JWT `sub` claim The default value is the client id.
@@ -1166,6 +1431,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.claims."claim
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.claims."claim-name"`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.claims."claim-name"+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
Additional claims.
@@ -1187,6 +1457,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.signature-alg
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.signature-algorithm`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.signature-algorithm+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The signature algorithm used for the `key-file` property. Supported values: `RS256` (default), `RS384`, `RS512`, `PS256`, `PS384`, `PS512`, `ES256`, `ES384`, `ES512`, `HS256`, `HS384`, `HS512`.
@@ -1208,6 +1483,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.lifespan+++[]
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.lifespan`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.lifespan+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
The JWT lifespan in seconds. This value is added to the time at which the JWT was issued to calculate the expiration time.
@@ -1229,6 +1509,11 @@ config_property_copy_button:+++quarkus.oidc-client.credentials.jwt.assertion+++[
endif::add-copy-button-to-config-props[]
+`quarkus.oidc-client."id".credentials.jwt.assertion`
+ifdef::add-copy-button-to-config-props[]
+config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.assertion+++[]
+endif::add-copy-button-to-config-props[]
+
[.description]
--
If true then the client authentication token is a JWT bearer grant assertion. Instead of producing 'client_assertion' and 'client_assertion_type' form properties, only 'assertion' is produced. This option is only supported by the OIDC client extension.
@@ -1245,1228 +1530,6 @@ endif::add-copy-button-to-env-var[]
|`false`
-h|[[quarkus-oidc-client_section_quarkus-oidc-client]] [.section-name.section-level0]##link:#quarkus-oidc-client_section_quarkus-oidc-client[Additional named clients]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-auth-server-url]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-auth-server-url[`quarkus.oidc-client."id".auth-server-url`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".auth-server-url+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The base URL of the OpenID Connect (OIDC) server, for example, `https://host:port/auth`. Do not set this property if you use 'quarkus-oidc' and the public key verification (`public-key`) or certificate chain verification only (`certificate-chain`) is required. The OIDC discovery endpoint is called by default by appending a `.well-known/openid-configuration` path to this URL. For Keycloak, use `https://host:port/realms/++{++realm++}++`, replacing `++{++realm++}++` with the Keycloak realm name.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__AUTH_SERVER_URL+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__AUTH_SERVER_URL+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-discovery-enabled]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-discovery-enabled[`quarkus.oidc-client."id".discovery-enabled`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".discovery-enabled+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Discovery of the OIDC endpoints. If not enabled, you must configure the OIDC endpoint URLs individually.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__DISCOVERY_ENABLED+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__DISCOVERY_ENABLED+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-registration-path]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-registration-path[`quarkus.oidc-client."id".registration-path`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".registration-path+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The relative path or absolute URL of the OIDC dynamic client registration endpoint. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__REGISTRATION_PATH+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__REGISTRATION_PATH+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-connection-delay]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-connection-delay[`quarkus.oidc-client."id".connection-delay`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".connection-delay+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The duration to attempt the initial connection to an OIDC server. For example, setting the duration to `20S` allows 10 retries, each 2 seconds apart. This property is only effective when the initial OIDC connection is created. For dropped connections, use the `connection-retry-count` property instead.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_DELAY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_DELAY+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-quarkus-oidc-client_quarkus-oidc-client[icon:question-circle[title=More information about the Duration format]]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-connection-retry-count]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-connection-retry-count[`quarkus.oidc-client."id".connection-retry-count`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".connection-retry-count+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The number of times to retry re-establishing an existing OIDC connection if it is temporarily lost. Different from `connection-delay`, which applies only to initial connection attempts. For instance, if a request to the OIDC token endpoint fails due to a connection issue, it will be retried as per this setting.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_RETRY_COUNT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_RETRY_COUNT+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|`3`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-connection-timeout]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-connection-timeout[`quarkus.oidc-client."id".connection-timeout`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".connection-timeout+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The number of seconds after which the current OIDC connection request times out.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_TIMEOUT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CONNECTION_TIMEOUT+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-quarkus-oidc-client_quarkus-oidc-client[icon:question-circle[title=More information about the Duration format]]
-|`10S`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-use-blocking-dns-lookup]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-use-blocking-dns-lookup[`quarkus.oidc-client."id".use-blocking-dns-lookup`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".use-blocking-dns-lookup+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Whether DNS lookup should be performed on the worker thread. Use this option when you can see logged warnings about blocked Vert.x event loop by HTTP requests to OIDC server.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__USE_BLOCKING_DNS_LOOKUP+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__USE_BLOCKING_DNS_LOOKUP+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`false`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-max-pool-size]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-max-pool-size[`quarkus.oidc-client."id".max-pool-size`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".max-pool-size+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The maximum size of the connection pool used by the WebClient.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__MAX_POOL_SIZE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__MAX_POOL_SIZE+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-follow-redirects]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-follow-redirects[`quarkus.oidc-client."id".follow-redirects`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".follow-redirects+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Follow redirects automatically when WebClient gets HTTP 302. When this property is disabled only a single redirect to exactly the same original URI is allowed but only if one or more cookies were set during the redirect request.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__FOLLOW_REDIRECTS+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__FOLLOW_REDIRECTS+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client-id-proxy]] [.section-name.section-level1]##link:#quarkus-oidc-client_section_quarkus-oidc-client-id-proxy[HTTP proxy configuration]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-host]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-host[`quarkus.oidc-client."id".proxy.host`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.host+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The host name or IP address of the Proxy. +
-Note: If the OIDC adapter requires a Proxy to talk with the OIDC server (Provider), set this value to enable the usage of a Proxy.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_HOST+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_HOST+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-port]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-port[`quarkus.oidc-client."id".proxy.port`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.port+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The port number of the Proxy. The default value is `80`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_PORT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_PORT+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|`80`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-username]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-username[`quarkus.oidc-client."id".proxy.username`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.username+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The username, if the Proxy needs authentication.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_USERNAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_USERNAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-proxy-password]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-proxy-password[`quarkus.oidc-client."id".proxy.password`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".proxy.password+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The password, if the Proxy needs authentication.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__PROXY_PASSWORD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__PROXY_PASSWORD+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client-id-tls]] [.section-name.section-level1]##link:#quarkus-oidc-client_section_quarkus-oidc-client-id-tls[TLS configuration]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-tls-tls-configuration-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-tls-tls-configuration-name[`quarkus.oidc-client."id".tls.tls-configuration-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".tls.tls-configuration-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The name of the TLS configuration to use.
-
-If a name is configured, it uses the configuration from `quarkus.tls..++*++` If a name is configured, but no TLS configuration is found with that name then an error will be thrown.
-
-The default TLS configuration is *not* used by default.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__TLS_TLS_CONFIGURATION_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__TLS_TLS_CONFIGURATION_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-token-path]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-token-path[`quarkus.oidc-client."id".token-path`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".token-path+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The OIDC token endpoint that issues access and refresh tokens; specified as a relative path or absolute URL. Set if `discovery-enabled` is `false` or a discovered token endpoint path must be customized.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__TOKEN_PATH+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__TOKEN_PATH+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-revoke-path]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-revoke-path[`quarkus.oidc-client."id".revoke-path`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".revoke-path+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The relative path or absolute URL of the OIDC token revocation endpoint.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__REVOKE_PATH+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__REVOKE_PATH+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-client-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-client-id[`quarkus.oidc-client."id".client-id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".client-id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client id of the application. Each application has a client id that is used to identify the application. Setting the client id is not required if `application-type` is `service` and no token introspection is required.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-client-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-client-name[`quarkus.oidc-client."id".client-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".client-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client name of the application. It is meant to represent a human readable description of the application which you may provide when an application (client) is registered in an OpenId Connect provider's dashboard. For example, you can set this property to have more informative log messages which record an activity of the given client.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CLIENT_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CLIENT_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-h|[[quarkus-oidc-client_section_quarkus-oidc-client-id-credentials]] [.section-name.section-level1]##link:#quarkus-oidc-client_section_quarkus-oidc-client-id-credentials[Different authentication options for OIDC client to access OIDC token and other secured endpoints]##
-h|Type
-h|Default
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-secret]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-secret[`quarkus.oidc-client."id".credentials.secret`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.secret+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client secret used by the `client_secret_basic` authentication method. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required. You can use `client-secret.value` instead, but both properties are mutually exclusive.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_SECRET+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_SECRET+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-value]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-value[`quarkus.oidc-client."id".credentials.client-secret.value`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.value+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The client secret value. This value is ignored if `credentials.secret` is set. Must be set unless a secret is set in `client-secret` or `jwt` client authentication is required.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_VALUE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_VALUE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-name[`quarkus.oidc-client."id".credentials.client-secret.provider.name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-keyring-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-keyring-name[`quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.keyring-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEYRING_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEYRING_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-key]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-provider-key[`quarkus.oidc-client."id".credentials.client-secret.provider.key`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.provider.key+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider client secret key
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_PROVIDER_KEY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-method]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-client-secret-method[`quarkus.oidc-client."id".credentials.client-secret.method`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.client-secret.method+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The authentication method. If the `clientSecret.value` secret is set, this method is `basic` by default.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_METHOD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_CLIENT_SECRET_METHOD+++`
-endif::add-copy-button-to-env-var[]
---
-a|tooltip:basic[`client_secret_basic` (default)\: The client id and secret are submitted with the HTTP Authorization Basic scheme.], tooltip:post[`client_secret_post`\: The client id and secret are submitted as the `client_id` and `client_secret` form parameters.], tooltip:post-jwt[`client_secret_jwt`\: The client id and generated JWT secret are submitted as the `client_id` and `client_secret` form parameters.], tooltip:query[client id and secret are submitted as HTTP query parameters. This option is only supported by the OIDC extension.]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-source]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-source[`quarkus.oidc-client."id".credentials.jwt.source`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.source+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-JWT token source: OIDC provider client or an existing JWT bearer token.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SOURCE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SOURCE+++`
-endif::add-copy-button-to-env-var[]
---
-a|`client`, `bearer`
-|`client`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret[`quarkus.oidc-client."id".credentials.jwt.secret`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If provided, indicates that JWT is signed using a secret key. It is mutually exclusive with `key`, `key-file` and `key-store` properties.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-name[`quarkus.oidc-client."id".credentials.jwt.secret-provider.name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider bean name, which should only be set if more than one CredentialsProvider is registered
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-keyring-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-keyring-name[`quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.keyring-name+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider keyring name. The keyring name is only required when the CredentialsProvider being used requires the keyring name to look up the secret, which is often the case when a CredentialsProvider is shared by multiple extensions to retrieve credentials from a more dynamic source like a vault instance or secret manager
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEYRING_NAME+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEYRING_NAME+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-key]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-secret-provider-key[`quarkus.oidc-client."id".credentials.jwt.secret-provider.key`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.secret-provider.key+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The CredentialsProvider client secret key
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SECRET_PROVIDER_KEY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key[`quarkus.oidc-client."id".credentials.jwt.key`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-String representation of a private key. If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key-file` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-file]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-file[`quarkus.oidc-client."id".credentials.jwt.key-file`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-file+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If provided, indicates that JWT is signed using a private key in PEM or JWK format. It is mutually exclusive with `secret`, `key` and `key-store` properties. You can use the `signature-algorithm` property to override the default key algorithm, `RS256`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_FILE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_FILE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-file]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-file[`quarkus.oidc-client."id".credentials.jwt.key-store-file`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-file+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If provided, indicates that JWT is signed using a private key from a keystore. It is mutually exclusive with `secret`, `key` and `key-file` properties.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_FILE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_FILE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-password]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-store-password[`quarkus.oidc-client."id".credentials.jwt.key-store-password`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-store-password+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-A parameter to specify the password of the keystore file.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_PASSWORD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_STORE_PASSWORD+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-id[`quarkus.oidc-client."id".credentials.jwt.key-id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The private key id or alias.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-password]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-key-password[`quarkus.oidc-client."id".credentials.jwt.key-password`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.key-password+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The private key password.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_PASSWORD+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_KEY_PASSWORD+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-audience]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-audience[`quarkus.oidc-client."id".credentials.jwt.audience`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.audience+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The JWT audience (`aud`) claim value. By default, the audience is set to the address of the OpenId Connect Provider's token endpoint.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_AUDIENCE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_AUDIENCE+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-token-key-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-token-key-id[`quarkus.oidc-client."id".credentials.jwt.token-key-id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.token-key-id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The key identifier of the signing key added as a JWT `kid` header.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_TOKEN_KEY_ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_TOKEN_KEY_ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-issuer]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-issuer[`quarkus.oidc-client."id".credentials.jwt.issuer`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.issuer+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The issuer of the signing key added as a JWT `iss` claim. The default value is the client id.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ISSUER+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ISSUER+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-subject]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-subject[`quarkus.oidc-client."id".credentials.jwt.subject`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.subject+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Subject of the signing key added as a JWT `sub` claim The default value is the client id.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SUBJECT+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SUBJECT+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-claims-claim-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-claims-claim-name[`quarkus.oidc-client."id".credentials.jwt.claims."claim-name"`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.claims."claim-name"+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Additional claims.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_CLAIMS__CLAIM_NAME_+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_CLAIMS__CLAIM_NAME_+++`
-endif::add-copy-button-to-env-var[]
---
-|Map
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-signature-algorithm]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-signature-algorithm[`quarkus.oidc-client."id".credentials.jwt.signature-algorithm`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.signature-algorithm+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The signature algorithm used for the `key-file` property. Supported values: `RS256` (default), `RS384`, `RS512`, `PS256`, `PS384`, `PS512`, `ES256`, `ES384`, `ES512`, `HS256`, `HS384`, `HS512`.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SIGNATURE_ALGORITHM+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_SIGNATURE_ALGORITHM+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-lifespan]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-lifespan[`quarkus.oidc-client."id".credentials.jwt.lifespan`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.lifespan+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-The JWT lifespan in seconds. This value is added to the time at which the JWT was issued to calculate the expiration time.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_LIFESPAN+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_LIFESPAN+++`
-endif::add-copy-button-to-env-var[]
---
-|int
-|`10`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-assertion]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-credentials-jwt-assertion[`quarkus.oidc-client."id".credentials.jwt.assertion`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".credentials.jwt.assertion+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If true then the client authentication token is a JWT bearer grant assertion. Instead of producing 'client_assertion' and 'client_assertion_type' form properties, only 'assertion' is produced. This option is only supported by the OIDC client extension.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ASSERTION+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CREDENTIALS_JWT_ASSERTION+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`false`
-
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-id]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-id[`quarkus.oidc-client."id".id`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".id+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-A unique OIDC client identifier. It must be set when OIDC clients are created dynamically and is optional in all other cases.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__ID+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__ID+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-client-enabled]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-client-enabled[`quarkus.oidc-client."id".client-enabled`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".client-enabled+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If this client configuration is enabled.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ENABLED+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__CLIENT_ENABLED+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-scopes]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-scopes[`quarkus.oidc-client."id".scopes`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".scopes+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-List of access token scopes
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__SCOPES+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__SCOPES+++`
-endif::add-copy-button-to-env-var[]
---
-|list of string
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-refresh-token-time-skew]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-refresh-token-time-skew[`quarkus.oidc-client."id".refresh-token-time-skew`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".refresh-token-time-skew+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Refresh token time skew. If this property is enabled then the configured duration is converted to seconds and is added to the current time when checking whether the access token should be refreshed. If the sum is greater than this access token's expiration time then a refresh is going to happen.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__REFRESH_TOKEN_TIME_SKEW+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__REFRESH_TOKEN_TIME_SKEW+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-quarkus-oidc-client_quarkus-oidc-client[icon:question-circle[title=More information about the Duration format]]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-access-token-expires-in]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-access-token-expires-in[`quarkus.oidc-client."id".access-token-expires-in`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".access-token-expires-in+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Access token expiration period relative to the current time. This property is only checked when an access token grant response does not include an access token expiration property.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__ACCESS_TOKEN_EXPIRES_IN+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__ACCESS_TOKEN_EXPIRES_IN+++`
-endif::add-copy-button-to-env-var[]
---
-|link:https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/Duration.html[Duration] link:#duration-note-anchor-quarkus-oidc-client_quarkus-oidc-client[icon:question-circle[title=More information about the Duration format]]
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-absolute-expires-in]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-absolute-expires-in[`quarkus.oidc-client."id".absolute-expires-in`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".absolute-expires-in+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-If the access token 'expires_in' property should be checked as an absolute time value as opposed to a duration relative to the current time.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__ABSOLUTE_EXPIRES_IN+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__ABSOLUTE_EXPIRES_IN+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`false`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-type]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-type[`quarkus.oidc-client."id".grant.type`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.type+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Grant type
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_TYPE+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_TYPE+++`
-endif::add-copy-button-to-env-var[]
---
-a|tooltip:client['client_credentials' grant requiring an OIDC client authentication only], tooltip:password['password' grant requiring both OIDC client and user ('username' and 'password') authentications], tooltip:code['authorization_code' grant requiring an OIDC client authentication as well as at least 'code' and 'redirect_uri' parameters which must be passed to OidcClient at the token request time.], tooltip:exchange['urn\:ietf\:params\:oauth\:grant-type\:token-exchange' grant requiring an OIDC client authentication as well as at least 'subject_token' parameter which must be passed to OidcClient at the token request time.], tooltip:jwt['urn\:ietf\:params\:oauth\:grant-type\:jwt-bearer' grant requiring an OIDC client authentication as well as at least an 'assertion' parameter which must be passed to OidcClient at the token request time.], tooltip:refresh['refresh_token' grant requiring an OIDC client authentication and a refresh token. Note, OidcClient supports this grant by default if an access token acquisition response contained a refresh token. However, in some cases, the refresh token is provided out of band, for example, it can be shared between several of the confidential client's services, etc. If 'quarkus.oidc-client.grant-type' is set to 'refresh' then `OidcClient` will only support refreshing the tokens.], tooltip:ciba['urn\:openid\:params\:grant-type\:ciba' grant requiring an OIDC client authentication as well as 'auth_req_id' parameter which must be passed to OidcClient at the token request time.], tooltip:device['urn\:ietf\:params\:oauth\:grant-type\:device_code' grant requiring an OIDC client authentication as well as 'device_code' parameter which must be passed to OidcClient at the token request time.]
-|tooltip:client['client_credentials' grant requiring an OIDC client authentication only]
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-access-token-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-access-token-property[`quarkus.oidc-client."id".grant.access-token-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.access-token-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Access token property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_ACCESS_TOKEN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_ACCESS_TOKEN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`access_token`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-token-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-token-property[`quarkus.oidc-client."id".grant.refresh-token-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-token-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Refresh token property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_TOKEN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_TOKEN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`refresh_token`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-expires-in-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-expires-in-property[`quarkus.oidc-client."id".grant.expires-in-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.expires-in-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Access token expiry property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_EXPIRES_IN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_EXPIRES_IN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`expires_in`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-expires-in-property]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-refresh-expires-in-property[`quarkus.oidc-client."id".grant.refresh-expires-in-property`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant.refresh-expires-in-property+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Refresh token expiry property name in a token grant response
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_EXPIRES_IN_PROPERTY+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_REFRESH_EXPIRES_IN_PROPERTY+++`
-endif::add-copy-button-to-env-var[]
---
-|string
-|`refresh_expires_in`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-grant-options-grant-name]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-grant-options-grant-name[`quarkus.oidc-client."id".grant-options."grant-name"`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".grant-options."grant-name"+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Grant options
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__GRANT_OPTIONS__GRANT_NAME_+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__GRANT_OPTIONS__GRANT_NAME_+++`
-endif::add-copy-button-to-env-var[]
---
-|Map>
-|
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-early-tokens-acquisition]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-early-tokens-acquisition[`quarkus.oidc-client."id".early-tokens-acquisition`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".early-tokens-acquisition+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Requires that all filters which use 'OidcClient' acquire the tokens at the post-construct initialization time, possibly long before these tokens are used. This property should be disabled if the access token may expire before it is used for the first time and no refresh token is available.
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__EARLY_TOKENS_ACQUISITION+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__EARLY_TOKENS_ACQUISITION+++`
-endif::add-copy-button-to-env-var[]
---
-|boolean
-|`true`
-
-a| [[quarkus-oidc-client_quarkus-oidc-client-id-headers-headers]] [.property-path]##link:#quarkus-oidc-client_quarkus-oidc-client-id-headers-headers[`quarkus.oidc-client."id".headers."headers"`]##
-ifdef::add-copy-button-to-config-props[]
-config_property_copy_button:+++quarkus.oidc-client."id".headers."headers"+++[]
-endif::add-copy-button-to-config-props[]
-
-
-[.description]
---
-Custom HTTP headers which have to be sent to the token endpoint
-
-
-ifdef::add-copy-button-to-env-var[]
-Environment variable: env_var_with_copy_button:+++QUARKUS_OIDC_CLIENT__ID__HEADERS__HEADERS_+++[]
-endif::add-copy-button-to-env-var[]
-ifndef::add-copy-button-to-env-var[]
-Environment variable: `+++QUARKUS_OIDC_CLIENT__ID__HEADERS__HEADERS_+++`
-endif::add-copy-button-to-env-var[]
---
-|Map
-|
-
-
|===
ifndef::no-duration-note[]
diff --git a/_generated-doc/main/config/quarkus-vertx-http_quarkus.http.adoc b/_generated-doc/main/config/quarkus-vertx-http_quarkus.http.adoc
index f86acf02f70..3aee516ed5a 100644
--- a/_generated-doc/main/config/quarkus-vertx-http_quarkus.http.adoc
+++ b/_generated-doc/main/config/quarkus-vertx-http_quarkus.http.adoc
@@ -2301,7 +2301,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-Origins allowed for CORS Comma separated list of valid URLs, e.g.: http://www.quarkus.io,http://localhost:3000 In case an entry of the list is surrounded by forward slashes, it is interpreted as a regular expression.
+The origins allowed for CORS. A comma-separated list of valid URLs, such as `http://www.quarkus.io,http://localhost:3000`. URLs enclosed in forward slashes are interpreted as regular expressions.
ifdef::add-copy-button-to-env-var[]
@@ -2322,7 +2322,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-HTTP methods allowed for CORS Comma separated list of valid methods. ex: GET,PUT,POST The filter allows any method if this is not set. default: returns any requested method as valid
+The HTTP methods allowed for CORS requests. A comma-separated list of valid HTTP methods, such as `GET,PUT,POST`. If not set, the filter allows any HTTP method by default. Default: Any HTTP request method is allowed.
ifdef::add-copy-button-to-env-var[]
@@ -2343,7 +2343,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-HTTP headers allowed for CORS Comma separated list of valid headers. ex: X-Custom,Content-Disposition The filter allows any header if this is not set. default: returns any requested header as valid
+The HTTP headers allowed for CORS requests. A comma-separated list of valid headers, such as `X-Custom,Content-Disposition`. If not set, the filter allows any header by default. Default: Any HTTP request header is allowed.
ifdef::add-copy-button-to-env-var[]
@@ -2364,7 +2364,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-HTTP headers exposed in CORS Comma separated list of valid headers. ex: X-Custom,Content-Disposition default: empty
+The HTTP headers exposed in CORS responses. A comma-separated list of headers to expose, such as `X-Custom,Content-Disposition`. Default: No headers are exposed.
ifdef::add-copy-button-to-env-var[]
@@ -2385,7 +2385,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-The `Access-Control-Max-Age` response header value indicating how long the results of a pre-flight request can be cached.
+The `Access-Control-Max-Age` response header value in `java.time.Duration` format. Informs the browser how long it can cache the results of a preflight request.
ifdef::add-copy-button-to-env-var[]
@@ -2406,7 +2406,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-The `Access-Control-Allow-Credentials` header is used to tell the browsers to expose the response to front-end JavaScript code when the request’s credentials mode Request.credentials is “include”. The value of this header will default to `true` if `quarkus.http.cors.origins` property is set and there is a match with the precise `Origin` header.
+The `Access-Control-Allow-Credentials` response header. Tells browsers if front-end JavaScript can be allowed to access credentials when the request's credentials mode, `Request.credentials`, is set to `include`. Default: `true` if the `quarkus.http.cors.origins` property is set and matches the precise `Origin` header value.
ifdef::add-copy-button-to-env-var[]
diff --git a/_generated-doc/main/config/quarkus-vertx-http_quarkus.http.cors.adoc b/_generated-doc/main/config/quarkus-vertx-http_quarkus.http.cors.adoc
index d7bebdd589a..e05f054bb2b 100644
--- a/_generated-doc/main/config/quarkus-vertx-http_quarkus.http.cors.adoc
+++ b/_generated-doc/main/config/quarkus-vertx-http_quarkus.http.cors.adoc
@@ -15,7 +15,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-Origins allowed for CORS Comma separated list of valid URLs, e.g.: http://www.quarkus.io,http://localhost:3000 In case an entry of the list is surrounded by forward slashes, it is interpreted as a regular expression.
+The origins allowed for CORS. A comma-separated list of valid URLs, such as `http://www.quarkus.io,http://localhost:3000`. URLs enclosed in forward slashes are interpreted as regular expressions.
ifdef::add-copy-button-to-env-var[]
@@ -36,7 +36,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-HTTP methods allowed for CORS Comma separated list of valid methods. ex: GET,PUT,POST The filter allows any method if this is not set. default: returns any requested method as valid
+The HTTP methods allowed for CORS requests. A comma-separated list of valid HTTP methods, such as `GET,PUT,POST`. If not set, the filter allows any HTTP method by default. Default: Any HTTP request method is allowed.
ifdef::add-copy-button-to-env-var[]
@@ -57,7 +57,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-HTTP headers allowed for CORS Comma separated list of valid headers. ex: X-Custom,Content-Disposition The filter allows any header if this is not set. default: returns any requested header as valid
+The HTTP headers allowed for CORS requests. A comma-separated list of valid headers, such as `X-Custom,Content-Disposition`. If not set, the filter allows any header by default. Default: Any HTTP request header is allowed.
ifdef::add-copy-button-to-env-var[]
@@ -78,7 +78,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-HTTP headers exposed in CORS Comma separated list of valid headers. ex: X-Custom,Content-Disposition default: empty
+The HTTP headers exposed in CORS responses. A comma-separated list of headers to expose, such as `X-Custom,Content-Disposition`. Default: No headers are exposed.
ifdef::add-copy-button-to-env-var[]
@@ -99,7 +99,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-The `Access-Control-Max-Age` response header value indicating how long the results of a pre-flight request can be cached.
+The `Access-Control-Max-Age` response header value in `java.time.Duration` format. Informs the browser how long it can cache the results of a preflight request.
ifdef::add-copy-button-to-env-var[]
@@ -120,7 +120,7 @@ endif::add-copy-button-to-config-props[]
[.description]
--
-The `Access-Control-Allow-Credentials` header is used to tell the browsers to expose the response to front-end JavaScript code when the request’s credentials mode Request.credentials is “include”. The value of this header will default to `true` if `quarkus.http.cors.origins` property is set and there is a match with the precise `Origin` header.
+The `Access-Control-Allow-Credentials` response header. Tells browsers if front-end JavaScript can be allowed to access credentials when the request's credentials mode, `Request.credentials`, is set to `include`. Default: `true` if the `quarkus.http.cors.origins` property is set and matches the precise `Origin` header value.
ifdef::add-copy-button-to-env-var[]
diff --git a/_generated-doc/main/infra/quarkus-all-build-items.adoc b/_generated-doc/main/infra/quarkus-all-build-items.adoc
index af6a584005b..2d4d15fa2ba 100644
--- a/_generated-doc/main/infra/quarkus-all-build-items.adoc
+++ b/_generated-doc/main/infra/quarkus-all-build-items.adoc
@@ -5822,17 +5822,6 @@ h|Attributes
-a| https://github.com/quarkusio/quarkus/blob/main/extensions/opentelemetry/deployment/src/main/java/io/quarkus/opentelemetry/deployment/tracing/DropApplicationUrisBuildItem.java[`io.quarkus.opentelemetry.deployment.tracing.DropApplicationUrisBuildItem`, window="_blank"]
-[.description]
---
-Represents an application uri that must be ignored for tracing.
--- a|`java.lang.String uri`
-
-_No Javadoc found_
-
-
-
-
a| https://github.com/quarkusio/quarkus/blob/main/extensions/opentelemetry/deployment/src/main/java/io/quarkus/opentelemetry/deployment/tracing/DropNonApplicationUrisBuildItem.java[`io.quarkus.opentelemetry.deployment.tracing.DropNonApplicationUrisBuildItem`, window="_blank"]
[.description]
--
@@ -5904,14 +5893,14 @@ h|Attributes
-a| https://github.com/quarkusio/quarkus/blob/main/extensions/panache/panache-hibernate-common/deployment/src/main/java/io/quarkus/panache/common/deployment/HibernateEnhancersRegisteredBuildItem.java[`io.quarkus.panache.common.deployment.HibernateEnhancersRegisteredBuildItem`, window="_blank"]
+a| https://github.com/quarkusio/quarkus/blob/main/extensions/panache/panache-hibernate-common/deployment/src/main/java/io/quarkus/panache/hibernate/common/deployment/HibernateEnhancersRegisteredBuildItem.java[`io.quarkus.panache.hibernate.common.deployment.HibernateEnhancersRegisteredBuildItem`, window="_blank"]
[.description]
--
Purely marker build item so that you can register enhancers after Hibernate registers its enhancers, which would make your enhancers run before the Hibernate enhancers
-- a|None
-a| https://github.com/quarkusio/quarkus/blob/main/extensions/panache/panache-hibernate-common/deployment/src/main/java/io/quarkus/panache/common/deployment/HibernateMetamodelForFieldAccessBuildItem.java[`io.quarkus.panache.common.deployment.HibernateMetamodelForFieldAccessBuildItem`, window="_blank"]
+a| https://github.com/quarkusio/quarkus/blob/main/extensions/panache/panache-hibernate-common/deployment/src/main/java/io/quarkus/panache/hibernate/common/deployment/HibernateMetamodelForFieldAccessBuildItem.java[`io.quarkus.panache.hibernate.common.deployment.HibernateMetamodelForFieldAccessBuildItem`, window="_blank"]
[.description]
--
_No Javadoc found_
@@ -5922,7 +5911,7 @@ _No Javadoc found_
-a| https://github.com/quarkusio/quarkus/blob/main/extensions/panache/panache-hibernate-common/deployment/src/main/java/io/quarkus/panache/common/deployment/HibernateModelClassCandidatesForFieldAccessBuildItem.java[`io.quarkus.panache.common.deployment.HibernateModelClassCandidatesForFieldAccessBuildItem`, window="_blank"]
+a| https://github.com/quarkusio/quarkus/blob/main/extensions/panache/panache-hibernate-common/deployment/src/main/java/io/quarkus/panache/hibernate/common/deployment/HibernateModelClassCandidatesForFieldAccessBuildItem.java[`io.quarkus.panache.hibernate.common.deployment.HibernateModelClassCandidatesForFieldAccessBuildItem`, window="_blank"]
[.description]
--
_No Javadoc found_
@@ -6777,7 +6766,7 @@ h|Attributes
-a| https://github.com/quarkusio/quarkus/blob/main/extensions/resteasy-reactive/rest-jackson-common/deployment/src/main/java/io/quarkus/resteasy/reactive/jackson/deployment/processor/ResteasyReactiveJacksonProviderDefinedBuildItem.java[`io.quarkus.resteasy.reactive.jackson.deployment.processor.ResteasyReactiveJacksonProviderDefinedBuildItem`, window="_blank"]
+a| https://github.com/quarkusio/quarkus/blob/main/extensions/resteasy-reactive/rest-jackson-common/deployment/src/main/java/io/quarkus/resteasy/reactive/jackson/common/deployment/processor/ResteasyReactiveJacksonProviderDefinedBuildItem.java[`io.quarkus.resteasy.reactive.jackson.common.deployment.processor.ResteasyReactiveJacksonProviderDefinedBuildItem`, window="_blank"]
[.description]
--
A BuildItem to mark that the server side jackson provider is defined. If not "emitted" by any of the processors, the reactive rest client (if used) will add its own jackson provider
diff --git a/_includes/dev-ui-build-container-image.html b/_includes/dev-ui-build-container-image.html
new file mode 100644
index 00000000000..991c4f11f07
--- /dev/null
+++ b/_includes/dev-ui-build-container-image.html
@@ -0,0 +1,11 @@
+
+
+
Build Container Image
+
Create production-ready container images directly from the Dev UI. The interface simplifies the process, allowing you to customize build configurations and monitor the progress effortlessly.
Manage application settings and configurations through an intuitive interface. Modify the configuration file
+ directly in the UI, or use the form editor UI to achieve the same goal. The form editor UI also provides
+ visibility into all available configuration options, ensuring you don't miss anything.
+
+
+
+
+
+
+
The form editor offers a user-friendly way to adjust settings while providing a comprehensive list of
+ configuration options available in your application.
Run continuous tests directly in the Dev UI to ensure code quality and catch regressions early. The intuitive interface provides instant feedback and allows you to monitor test results in real-time, streamlining the development process.
Automatically generate database schemas and SQL scripts for faster development. The Quarkus Dev UI simplifies database integration, ensuring your application's data structure is always up to date with minimal effort. For developers familiar with their database of choice, the Dev UI makes it clear what Hibernate and Panache are doing under the hood, providing transparency and confidence in the generated database operations.
Visualize your application dependencies to optimize and debug relationships. The Quarkus Dev UI provides a clear and interactive graph of your application's modules and their dependencies, helping you quickly identify potential issues or inefficiencies.
Use the Quarkus Dev UI to seamlessly modify your application's configuration values and directly generate new Helm charts. The Dev UI streamlines the process, allowing you to update settings and export tailored Kubernetes resources in one integrated interface.
+
With the configuration editor, you can customize namespaces, labels, environment variables, volume mounts, readiness and liveness probes, RBAC resources, and more. These settings ensure your generated Kubernetes manifests align perfectly with your deployment requirements.
+
+
+
+
+
Once the configurations are in place, you can use the Dev UI to generate the Kubernetes resources, including Helm charts. This ensures a seamless and efficient process for adapting and deploying your application.
With the Kafka Dev UI, directly manage your Kafka cluster and streamline essential tasks such as listing and creating topics, visualizing records, publishing new records, and inspecting consumer groups with their consumption lag. The UI integrates seamlessly with the Kafka broker configured for your application, providing an intuitive interface for broker management.
The Quarkus Dev UI provides seamless integration with Keycloak, enabling developers to manage authentication and authorization configurations effortlessly. With the Keycloak integration, you can configure identity providers, client settings, and role mappings directly through the Dev UI.
+
Leverage the Keycloak integration to simplify securing your applications during development, ensuring a smooth transition to production-ready security configurations.
The Quarkus Dev UI allows developers to easily view and manage spun-up dev services, such as databases and message brokers. These services are containers automatically managed by Quarkus, reducing the overhead of manual setup.
+
This feature is invaluable for onboarding new team members, helping them quickly understand and interact with the application's dependencies, and reducing cognitive load for experienced developers.
Interact effortlessly with your application's endpoints using the built-in Quarkus Dev UI. Quickly navigate to any of the endpoints of your Quarkus application with ease.
+
+
+
+
+
+
+
If you prefer Swagger UI, you can access it directly through the Swagger Dev UI by adding the smallrye-openapi extension to your project. This enables an intuitive way to explore and test your APIs.
diff --git a/_includes/homepage-dev-ui-band.html b/_includes/homepage-dev-ui-band.html
new file mode 100644
index 00000000000..5f5a6f0182c
--- /dev/null
+++ b/_includes/homepage-dev-ui-band.html
@@ -0,0 +1,88 @@
+
+
+
+
Dev UI Features
+
Explore the powerful built-in features of the Quarkus Dev UI that enhance productivity and streamline
+ development.
+
+
+
+
+
+
+
+
+
+
Configuration Management
+
Seamlessly manage and modify application settings using Quarkus's unified configuration framework.
+
+
+
+
+
+
+
+
+
Visualize Endpoints
+
Interact with application endpoints effortlessly.
+
+
+
+
+
+
+
+
+
DB Schema Generation
+
Automatically create database schemas and SQL scripts for tables, reducing manual effort.
+
+
+
+
+
+
+
+
+
Dependency Visualization
+
Get a comprehensive view of your application's dependencies to optimize and debug relationships.
+
+
+
+
+
+
+
+
+
Continuous Testing
+
Run tests continuously to ensure code quality and prevent regressions.
+
+
+
+
+
+
+
+
+
Build Container Image
+
Create lightweight, production-ready container images directly from the Dev UI.
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/_layouts/dev-ui.html b/_layouts/dev-ui.html
new file mode 100644
index 00000000000..55ce083b082
--- /dev/null
+++ b/_layouts/dev-ui.html
@@ -0,0 +1,16 @@
+---
+layout: base
+---
+{% include title-band.html %}
+
+ {% include dev-ui-configuration.html %}
+ {% include dev-ui-visualize-endpoints.html %}
+ {% include dev-ui-manage-dev-services.html %}
+ {% include dev-ui-db-schema-generation.html %}
+ {% include dev-ui-dependency-visualization.html %}
+ {% include dev-ui-continuous-testing.html %}
+ {% include dev-ui-build-container-image.html %}
+ {% include dev-ui-generate-kubernetes-yaml.html %}
+ {% include dev-ui-keycloak-integration.html %}
+ {% include dev-ui-kafka-ui-integration.html %}
+
\ No newline at end of file
diff --git a/_layouts/index.html b/_layouts/index.html
index c3e89a2f298..077a96e3e66 100644
--- a/_layouts/index.html
+++ b/_layouts/index.html
@@ -4,6 +4,7 @@
{% include homepage-hero-band-ssjprime.html %}
{% include homepage-features-icon-band.html %}
+ {% include homepage-dev-ui-band.html %}
{% include homepage-userstory-callout.html %}
{% include homepage-performance-band.html %}
{% include recent-posts-band.html %}
diff --git a/_sass/includes/homepage-dev-ui-band.scss b/_sass/includes/homepage-dev-ui-band.scss
new file mode 100644
index 00000000000..16f5d5c0aef
--- /dev/null
+++ b/_sass/includes/homepage-dev-ui-band.scss
@@ -0,0 +1,152 @@
+.homepage-dev-ui-band {
+ color: var(--main-text-color);
+ padding: 4rem 2rem;
+ border-top: 1px solid var(--card-outline);
+
+ h3 {
+ font-size: 2.5rem;
+ color: var(--heading-color);
+ margin-bottom: 1.5rem;
+ }
+
+ p {
+ font-size: 1.2rem;
+ color: var(--main-text-color);
+ margin-bottom: 3rem;
+ }
+
+
+ .button-container {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ margin-top: 2rem;
+ }
+
+ .grid-container {
+ display: grid;
+ grid-template-columns: repeat(3, 1fr);
+ gap: 1.5rem;
+ justify-content: center;
+ align-items: center;
+ margin: auto;
+ place-items: center;
+ }
+
+ .contrib-block {
+ height: 100% !important;
+ max-height: 350px;
+ background: var(--card-background-color);
+ border-radius: 10px;
+ box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
+ overflow: hidden;
+ text-align: center;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ max-width: 320px;
+ margin: 0;
+ border: 1px solid var(--card-outline);
+
+ .image-container {
+ width: 100%;
+ height: 150px !important;
+ overflow: hidden;
+ border-bottom: 2px solid var(--link-color);
+ flex: 1;
+ flex-shrink: 0;
+
+ }
+
+ img {
+ width: 100%;
+ height: 100%;
+ object-fit: cover;
+ display: block;
+ }
+
+ .content {
+ padding: 1.5rem;
+ background: var(--tile-background-color);
+ flex: 1;
+ flex-grow: 1;
+ justify-content: center;
+
+
+ h3 {
+ font-size: 1.4rem;
+ font-weight: bold;
+ color: var(--tile-text-color);
+ margin-bottom: 1rem;
+ white-space: nowrap;
+ overflow: hidden;
+ font-size: clamp(1.2rem, 2vw, 1.4rem);
+ }
+
+ p {
+ font-size: 1rem;
+ color: var(--main-text-color);
+ line-height: 1.5;
+ margin: 0;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ max-width: 100%;
+ }
+
+ }
+
+ }
+
+ @media screen and (max-width: 1024px) {
+ .grid-container {
+ grid-template-columns: 1fr 1fr;
+ gap: 1.5rem;
+ }
+
+ .contrib-block {
+ max-width: 250px;
+
+ .image-container {
+ height: 130px;
+ }
+
+ .content {
+ padding: 1.2rem;
+
+ h3 {
+ font-size: 1.3rem;
+ }
+
+ p {
+ font-size: 0.95rem;
+ }
+ }
+ }
+ }
+
+ @media screen and (max-width: 600px) {
+ .grid-container {
+ grid-template-columns: 1fr;
+ }
+
+ .contrib-block {
+ max-width: 100%;
+
+ .image-container {
+ height: 120px;
+ }
+
+ .content {
+ padding: 1rem;
+
+ h3 {
+ font-size: 1.2rem;
+ }
+
+ p {
+ font-size: 0.9rem;
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/_sass/layouts/dev-ui.scss b/_sass/layouts/dev-ui.scss
new file mode 100644
index 00000000000..c385fb679dc
--- /dev/null
+++ b/_sass/layouts/dev-ui.scss
@@ -0,0 +1,46 @@
+.dev-ui-section {
+ padding: 2rem 1rem;
+
+ h3 {
+ font-size: 1.8rem;
+ color: var(--heading-color);
+ margin-bottom: 1rem;
+ text-align: left;
+ }
+
+ p {
+ font-size: 1rem;
+ color: var(--main-text-color);
+ line-height: 1.5;
+ margin-bottom: 1.5rem;
+ text-align: left;
+ }
+
+ .image-container {
+ display: flex;
+ justify-content: center;
+ margin: 3rem 0;
+
+ img {
+ max-width: 80%;
+ height: auto;
+ border: 1px solid var(--card-outline);
+ border-radius: 5px;
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
+ }
+ }
+
+ @media screen and (max-width: 768px) {
+ h3 {
+ font-size: 1.5rem;
+ }
+
+ p {
+ font-size: 0.9rem;
+ }
+
+ .image-container img {
+ max-width: 100%;
+ }
+ }
+}
diff --git a/_versions/main/guides/getting-started-testing.adoc b/_versions/main/guides/getting-started-testing.adoc
index ab8ff2b88e4..916b16f57fd 100644
--- a/_versions/main/guides/getting-started-testing.adoc
+++ b/_versions/main/guides/getting-started-testing.adoc
@@ -1236,7 +1236,20 @@ public @interface WithRepeatableTestResource {
}
----
+=== Usage of `@WithTestResources`
+While test resources provided by `@QuarkusTestResource` are available either globally or restricted to the annotated test class (`restrictToAnnotatedClass`), the annotation `@WithTestResources` allows to additionally group tests by test resources for execution.
+`@WithTestResources` has a `scope` property that takes a `TestResourceScope` enum value:
+
+- `TestResourceScope.MATCHING_RESOURCES` (default): Quarkus will group tests with the same test resources and run them together. After a group has been executed, all test resources will be stopped, and the next group will be executed.
+- `TestResourceScope.RESTRICTED_TO_CLASS`: The test resource is available only for the annotated test class and will be stopped after the test class has been executed.
+- `TestResourceScope.GLOBAL`: Test resources apply to all tests in the testsuite
+
+Quarkus needs to restart if one of the following is true:
+
+- At least one the existing test resources is restricted to the test class
+- At least one the next test resources is restricted to the test class
+- Different {@code MATCHING_RESOURCE} scoped test resources are being used
== Hang Detection
diff --git a/_versions/main/guides/hibernate-orm.adoc b/_versions/main/guides/hibernate-orm.adoc
index b3f6e69e96c..e369e8ca015 100644
--- a/_versions/main/guides/hibernate-orm.adoc
+++ b/_versions/main/guides/hibernate-orm.adoc
@@ -1159,11 +1159,13 @@ From the implementation above, tenants are resolved from the request path so tha
[NOTE]
====
-If you also use xref:security-openid-connect-multitenancy.adoc[OIDC multitenancy] and both OIDC and Hibernate ORM tenant IDs are the same and must be extracted from the Vert.x `RoutingContext` then you can pass the tenant id from the OIDC Tenant Resolver to the Hibernate ORM Tenant Resolver as a `RoutingContext` attribute, for example:
+If you also use xref:security-openid-connect-multitenancy.adoc[OIDC multitenancy] and both OIDC and Hibernate ORM tenant IDs are the same,
+you can get the OIDC tenant id from a `RoutingContext` attribute like in the example below:
[source,java]
----
import io.quarkus.hibernate.orm.runtime.tenant.TenantResolver;
+import io.quarkus.oidc.runtime.OidcUtils;
import io.vertx.ext.web.RoutingContext;
@PersistenceUnitExtension
@@ -1171,15 +1173,19 @@ import io.vertx.ext.web.RoutingContext;
public class CustomTenantResolver implements TenantResolver {
@Inject
- RoutingContext context;
+ RoutingContext context; <1>
...
@Override
public String resolveTenantId() {
- // OIDC TenantResolver has already calculated the tenant id and saved it as a RoutingContext `tenantId` attribute:
- return context.get("tenantId");
+ // OIDC has saved the tenant id as the RoutingContext attribute:
+ return context.get(OidcUtils.TENANT_ID_ATTRIBUTE);
}
}
----
+<1> If the Hibernate `TenantResolver` also resolves tenants when there is no active HTTP request,
+for example when you query database from a scheduler, the `RoutingContext` CDI bean will not be available.
+Please inject the `io.quarkus.vertx.http.runtime.CurrentVertxRequest` CDI bean instead and get the `RoutingContext` from this bean.
+
====
=== Configuring the application
diff --git a/_versions/main/guides/hibernate-search-orm-elasticsearch.adoc b/_versions/main/guides/hibernate-search-orm-elasticsearch.adoc
index 674de2b0c92..c856125afe8 100644
--- a/_versions/main/guides/hibernate-search-orm-elasticsearch.adoc
+++ b/_versions/main/guides/hibernate-search-orm-elasticsearch.adoc
@@ -627,32 +627,29 @@ Edit `src/main/resources/application.properties` and inject the following config
[source,properties]
----
-quarkus.ssl.native=false <1>
+quarkus.datasource.db-kind=postgresql <1>
-quarkus.datasource.db-kind=postgresql <2>
+quarkus.hibernate-orm.sql-load-script=import.sql <2>
-quarkus.hibernate-orm.sql-load-script=import.sql <3>
+quarkus.hibernate-search-orm.elasticsearch.version=8 <3>
+quarkus.hibernate-search-orm.indexing.plan.synchronization.strategy=sync <4>
-quarkus.hibernate-search-orm.elasticsearch.version=8 <4>
-quarkus.hibernate-search-orm.indexing.plan.synchronization.strategy=sync <5>
-
-%prod.quarkus.datasource.jdbc.url=jdbc:postgresql://localhost/quarkus_test <6>
+%prod.quarkus.datasource.jdbc.url=jdbc:postgresql://localhost/quarkus_test
%prod.quarkus.datasource.username=quarkus_test
%prod.quarkus.datasource.password=quarkus_test
%prod.quarkus.hibernate-orm.database.generation=create
-%prod.quarkus.hibernate-search-orm.elasticsearch.hosts=localhost:9200 <6>
+%prod.quarkus.hibernate-search-orm.elasticsearch.hosts=localhost:9200 <5>
----
-<1> We won't use SSL, so we disable it to have a more compact native executable.
-<2> Let's create a PostgreSQL datasource.
-<3> We load some initial data on startup (see <>).
-<4> We need to tell Hibernate Search about the version of Elasticsearch we will use.
+<1> Let's create a PostgreSQL datasource.
+<2> We load some initial data on startup (see <>).
+<3> We need to tell Hibernate Search about the version of Elasticsearch we will use.
It is important because there are significant differences between Elasticsearch mapping syntax depending on the version.
Since the mapping is created at build time to reduce startup time, Hibernate Search cannot connect to the cluster to automatically detect the version.
Note that, for OpenSearch, you need to prefix the version with `opensearch:`; see <>.
-<5> This means that we wait for the entities to be searchable before considering a write complete.
+<4> This means that we wait for the entities to be searchable before considering a write complete.
On a production setup, the `write-sync` default will provide better performance.
Using `sync` is especially important when testing as you need the entities to be searchable immediately.
-<6> For development and tests, we rely on <>,
+<5> For development and tests, we rely on <>,
which means Quarkus will start a PostgreSQL database and Elasticsearch cluster automatically.
In production mode, however,
we will want to start a PostgreSQL database and Elasticsearch cluster manually,
diff --git a/_versions/main/guides/hibernate-search-standalone-elasticsearch.adoc b/_versions/main/guides/hibernate-search-standalone-elasticsearch.adoc
index bf2b4ef7dd1..fc4f742d8c1 100644
--- a/_versions/main/guides/hibernate-search-standalone-elasticsearch.adoc
+++ b/_versions/main/guides/hibernate-search-standalone-elasticsearch.adoc
@@ -559,31 +559,28 @@ Edit `src/main/resources/application.properties` and inject the following config
[source,properties]
----
-quarkus.ssl.native=false <1>
+quarkus.hibernate-search-standalone.mapping.structure=document <1>
+quarkus.hibernate-search-standalone.elasticsearch.version=8 <2>
+quarkus.hibernate-search-standalone.indexing.plan.synchronization.strategy=sync <3>
-quarkus.hibernate-search-standalone.mapping.structure=document <2>
-quarkus.hibernate-search-standalone.elasticsearch.version=8 <3>
-quarkus.hibernate-search-standalone.indexing.plan.synchronization.strategy=sync <4>
-
-%prod.quarkus.hibernate-search-standalone.elasticsearch.hosts=localhost:9200 <5>
+%prod.quarkus.hibernate-search-standalone.elasticsearch.hosts=localhost:9200 <4>
----
-<1> We won't use SSL, so we disable it to have a more compact native executable.
-<2> We need to tell Hibernate Search about the structure of our entities.
+<1> We need to tell Hibernate Search about the structure of our entities.
+
In this application we consider an indexed entity (the author) is the root of a "document":
the author "owns" books it references through associations,
which *cannot* be updated independently of the author.
+
See <> for other options and more details.
-<3> We need to tell Hibernate Search about the version of Elasticsearch we will use.
+<2> We need to tell Hibernate Search about the version of Elasticsearch we will use.
+
It is important because there are significant differences between Elasticsearch mapping syntax depending on the version.
Since the mapping is created at build time to reduce startup time, Hibernate Search cannot connect to the cluster to automatically detect the version.
Note that, for OpenSearch, you need to prefix the version with `opensearch:`; see <>.
-<4> This means that we wait for the entities to be searchable before considering a write complete.
+<3> This means that we wait for the entities to be searchable before considering a write complete.
On a production setup, the `write-sync` default will provide better performance.
Using `sync` is especially important when testing as you need the entities to be searchable immediately.
-<5> For development and tests, we rely on <>,
+<4> For development and tests, we rely on <>,
which means Quarkus will start an Elasticsearch cluster automatically.
In production mode, however,
we will want to start an Elasticsearch cluster manually,
diff --git a/_versions/main/guides/mongodb-panache.adoc b/_versions/main/guides/mongodb-panache.adoc
index 853f6e27b7d..e0f3a15b04c 100644
--- a/_versions/main/guides/mongodb-panache.adoc
+++ b/_versions/main/guides/mongodb-panache.adoc
@@ -1275,12 +1275,12 @@ and then `quarkus.mongodb.database` property.
[NOTE]
====
If you also use xref:security-openid-connect-multitenancy.adoc[OIDC multitenancy], then if the OIDC tenantID and MongoDB
-database are the same and must be extracted from the Vert.x `RoutingContext` you can pass the tenant id from the OIDC `TenantResolver`
-to the MongoDB with Panache `MongoDatabaseResolver` as a `RoutingContext` attribute, for example:
+database are the same, you can access the OIDC tenant id from a `RoutingContext` attribute like in the example below:
[source,java]
----
import io.quarkus.mongodb.panache.common.MongoDatabaseResolver;
+import io.quarkus.oidc.runtime.OidcUtils;
import io.vertx.ext.web.RoutingContext;
@RequestScoped
@@ -1291,8 +1291,8 @@ public class CustomMongoDatabaseResolver implements MongoDatabaseResolver {
...
@Override
public String resolve() {
- // OIDC TenantResolver has already calculated the tenant id and saved it as a RoutingContext `tenantId` attribute:
- return context.get("tenantId");
+ // OIDC has saved the tenant id as the RoutingContext attribute:
+ return context.get(OidcUtils.TENANT_ID_ATTRIBUTE);
}
}
----
diff --git a/_versions/main/guides/opentelemetry-tracing.adoc b/_versions/main/guides/opentelemetry-tracing.adoc
index f456d8dc8a2..4c5944576ee 100644
--- a/_versions/main/guides/opentelemetry-tracing.adoc
+++ b/_versions/main/guides/opentelemetry-tracing.adoc
@@ -590,81 +590,30 @@ quarkus.otel.instrument.rest=false
quarkus.otel.instrument.resteasy=false
----
-=== Disable specific REST endpoints
+[[disabling-traces-for-app-endpoints]]
+=== Disabling Specific Traces for Application Endpoints
-There are two ways to disable tracing for a specific REST endpoint.
+You can use the `quarkus.otel.traces.suppress-application-uris` property to exclude specific endpoints from being traced.
-You can use the `@io.quarkus.opentelemetry.runtime.tracing.Traceless` (or simply `@Traceless`) annotation to disable tracing for a specific endpoint.
-
-Examples:
-
-==== `@Traceless` annotation on a class
-
-[source,java]
-.PingResource.java
-----
-@Path("/health")
-public class PingResource {
-
- @Path("/ping")
- public String ping() {
- return "pong";
- }
-}
-----
-
-When the `@Traceless` annotation is placed on a class, all methods annotated with `@Path` will be excluded from tracing.
-
-==== `@Traceless` annotation on a method
-
-[source,java]
-.TraceResource.java
-----
-@Path("/trace")
-@Traceless
-public class TraceResource {
-
- @Path("/no")
- @GET
- @Traceless
- public String noTrace() {
- return "no";
- }
-
- @Path("/yes")
- @GET
- public String withTrace() {
- return "yes";
- }
-}
-----
-
-In the example above, only `GET /trace/yes` will be included in tracing.
-
-==== Disable using configuration
-
-If you do not want to modify the source code, you can use your `application.properties` to disable a specific endpoint through the `quarkus.otel.traces.suppress-application-uris` property.
-
-Example:
+==== Example Configuration
[source,properties]
-.application.properties
----
+# application.properties
quarkus.otel.traces.suppress-application-uris=trace,ping,people*
----
This configuration will:
-- Disable tracing for the `/trace` URI;
-- Disable tracing for the `/ping` URI;
-- Disable tracing for the `/people` URI and all other URIs under it, e.g., `/people/1`, `/people/1/cars`.
+- Disable tracing for the `/trace` URI.
+- Disable tracing for the `/ping` URI.
+- Disable tracing for the `/people` URI and all subpaths, such as `/people/1` and `/people/1/cars`.
[NOTE]
====
-If you are using `quarkus.http.root-path`, you need to remember to include the root path in the configuration. Unlike `@Traceless`, this configuration does not automatically add the root path.
+If you are using `quarkus.http.root-path`, ensure you include the root path in the configuration.
====
-
[[configuration-reference]]
== OpenTelemetry Configuration Reference
diff --git a/_versions/main/guides/qute-reference.adoc b/_versions/main/guides/qute-reference.adoc
index 4b62a037bd4..f0f204fb9f4 100644
--- a/_versions/main/guides/qute-reference.adoc
+++ b/_versions/main/guides/qute-reference.adoc
@@ -457,7 +457,8 @@ First two elements: {#each myArray.take(2)}{it}{/each} <5>
==== Character Escapes
-For HTML and XML templates the `'`, `"`, `<`, `>`, `&` characters are escaped by default if a template variant is set.
+For HTML and XML templates the `'`, `"`, `<`, `>`, `&` characters are escaped by default if a corresponding template variant is set.
+For JSON templates the `"`, `\` and the control characters (`U+0000` through `U+001F`) are escaped by default if a corresponding template variant is set.
NOTE: In Quarkus, a variant is set automatically for templates located in the `src/main/resources/templates`. By default, the `java.net.URLConnection#getFileNameMap()` is used to determine the content-type of a template file. The additional map of suffixes to content types can be set via `quarkus.qute.content-types`.
@@ -466,6 +467,7 @@ If you need to render the unescaped value:
1. Either use the `raw` or `safe` properties implemented as extension methods of the `java.lang.Object`,
2. Or wrap the `String` value in a `io.quarkus.qute.RawString`.
+.HTML Example
[source,html]
----
@@ -478,6 +480,17 @@ If you need to render the unescaped value:
TIP: By default, a template with one of the following content types is escaped: `text/html`, `text/xml`, `application/xml` and `application/xhtml+xml`. However, it's possible to extend this list via the `quarkus.qute.escape-content-types` configuration property.
+.JSON Example
+[source,json]
+----
+{
+ "id": "{valueId.raw}", <1>
+ "name": "{valueName}" <2>
+}
+----
+<1> `valueId` that resolves to `\nA12345` will be rendered as `\nA12345` that will result in an invalid JSON Object because of the new line inserted inside the string value for the attribute `id`.
+<2> `valueName` that resolves to `\tExpressions \n Escapes` will be rendered as `\\tExpressions \\n Escapes`.
+
[[virtual_methods]]
==== Virtual Methods
diff --git a/_versions/main/guides/security-openid-connect-client-reference.adoc b/_versions/main/guides/security-openid-connect-client-reference.adoc
index 329345aa1a9..1f82509661f 100644
--- a/_versions/main/guides/security-openid-connect-client-reference.adoc
+++ b/_versions/main/guides/security-openid-connect-client-reference.adoc
@@ -355,8 +355,8 @@ import java.util.Map;
import org.eclipse.microprofile.config.inject.ConfigProperty;
import io.quarkus.oidc.client.OidcClient;
-import io.quarkus.oidc.client.OidcClientConfig;
-import io.quarkus.oidc.client.OidcClientConfig.Grant.Type;
+import io.quarkus.oidc.client.runtime.OidcClientConfig;
+import io.quarkus.oidc.client.runtime.OidcClientConfig.Grant.Type;
import io.quarkus.oidc.client.OidcClients;
import io.quarkus.runtime.StartupEvent;
import io.smallrye.mutiny.Uni;
@@ -383,14 +383,14 @@ public class OidcClientCreator {
}
private Uni createOidcClient() {
- OidcClientConfig cfg = new OidcClientConfig();
- cfg.setId("myclient");
- cfg.setAuthServerUrl(oidcProviderAddress);
- cfg.setClientId("backend-service");
- cfg.getCredentials().setSecret("secret");
- cfg.getGrant().setType(Type.PASSWORD);
- cfg.setGrantOptions(Map.of("password",
- Map.of("username", "alice", "password", "alice")));
+ OidcClientConfig cfg = OidcClientConfig
+ .authServerUrl(oidcProviderAddress)
+ .id("myclient")
+ .clientId("backend-service")
+ .credentials("secret")
+ .grant(Type.PASSWORD)
+ .grantOptions("password", Map.of("username", "alice", "password", "alice"))
+ .build();
return oidcClients.newClient(cfg);
}
}
diff --git a/_versions/main/guides/security-openid-connect-client.adoc b/_versions/main/guides/security-openid-connect-client.adoc
index 134a70af243..5444790c3f7 100644
--- a/_versions/main/guides/security-openid-connect-client.adoc
+++ b/_versions/main/guides/security-openid-connect-client.adoc
@@ -303,14 +303,14 @@ public class OidcClientCreator {
}
private Uni createOidcClient() {
- OidcClientConfig cfg = new OidcClientConfig();
- cfg.setId("myclient");
- cfg.setAuthServerUrl(oidcProviderAddress);
- cfg.setClientId("backend-service");
- cfg.getCredentials().setSecret("secret");
- cfg.getGrant().setType(Type.PASSWORD);
- cfg.setGrantOptions(Map.of("password",
- Map.of("username", "alice", "password", "alice")));
+ OidcClientConfig cfg = OidcClientConfig
+ .authServerUrl(oidcProviderAddress)
+ .id("myclient")
+ .clientId("backend-service")
+ .credentials("secret")
+ .grant(Type.PASSWORD)
+ .grantOptions("password", Map.of("username", "alice", "password", "alice"))
+ .build();
return oidcClients.newClient(cfg);
}
}
diff --git a/_versions/main/guides/security-openid-connect-multitenancy.adoc b/_versions/main/guides/security-openid-connect-multitenancy.adoc
index 004d220d7ac..5d8bcbf6307 100644
--- a/_versions/main/guides/security-openid-connect-multitenancy.adoc
+++ b/_versions/main/guides/security-openid-connect-multitenancy.adoc
@@ -329,22 +329,10 @@ A similar technique can be used with `TenantConfigResolver`, where a `tenant-id`
[NOTE]
====
-If you also use xref:hibernate-orm.adoc#multitenancy[Hibernate ORM multitenancy] or xref:mongodb-panache.adoc#multitenancy[MongoDB with Panache multitenancy] and both tenant ids are the same
-and must be extracted from the Vert.x `RoutingContext`, you can pass the tenant id from the OIDC Tenant Resolver to the Hibernate ORM Tenant Resolver or MongoDB with Panache Mongo Database Resolver
-as a `RoutingContext` attribute, for example:
-
-[source,java]
-----
-public class CustomTenantResolver implements TenantResolver {
-
- @Override
- public String resolve(RoutingContext context) {
- String tenantId = extractTenantId(context);
- context.put("tenantId", tenantId);
- return tenantId;
- }
-}
-----
+If you also use Hibernate ORM multitenancy or MongoDB with Panache multitenancy and both tenant ids are the same,
+you can get the tenant id from the `RoutingContext` attribute with `tenant-id`. You can find more information here:
+* xref:hibernate-orm.adoc#multitenancy[Hibernate ORM multitenancy]
+* xref:mongodb-panache.adoc#multitenancy[MongoDB with Panache multitenancy]
====
== Starting and configuring the Keycloak server
diff --git a/_versions/main/guides/virtual-threads.adoc b/_versions/main/guides/virtual-threads.adoc
index 72257ae91ac..89000b4cb25 100644
--- a/_versions/main/guides/virtual-threads.adoc
+++ b/_versions/main/guides/virtual-threads.adoc
@@ -550,6 +550,38 @@ public class LoomUnitExampleTest {
}
----
+== Virtual thread metrics
+
+You can enable the Micrometer Virtual Thread _binder_ by adding the following artifact to your application:
+
+[source,xml]
+----
+
+ io.micrometer
+ micrometer-java21
+
+----
+
+This binder keeps track of the number of pinning events and the number of virtual threads failed to be started or un-parked.
+See the https://docs.micrometer.io/micrometer/reference/reference/jvm.html#_java_21_metrics[MicroMeter documentation] for more information.
+
+You can explicitly disable the binder by setting the following property in your `application.properties`:
+
+[source,properties]
+----
+# The binder is automatically enabled if the micrometer-java21 dependency is present
+quarkus.micrometer.binder.virtual-threads.enabled=false
+----
+
+In addition, if the application is running on a JVM that does not support virtual threads (prior to Java 21), the binder is automatically disabled.
+
+You can associate tags to the collected metrics by setting the following properties in your `application.properties`:
+
+[source,properties]
+----
+quarkus.micrometer.binder.virtual-threads.tags=tag_1=value_1, tag_2=value_2
+----
+
== Additional references
- https://dl.acm.org/doi/10.1145/3583678.3596895[Considerations for integrating virtual threads in a Java framework: a Quarkus example in a resource-constrained environment]
diff --git a/assets/css/main.scss b/assets/css/main.scss
index 910715d5ca1..fd029227ac4 100755
--- a/assets/css/main.scss
+++ b/assets/css/main.scss
@@ -47,6 +47,7 @@ $baseurl: "{{ site.baseurl }}";
@import "layouts/publications";
@import "layouts/documentation";
@import "layouts/working-groups";
+@import "layouts/dev-ui";
@import "includes/header-navigation";
@import "includes/libraries-standards-band";
@import "includes/homepage-hero-band";
@@ -68,4 +69,5 @@ $baseurl: "{{ site.baseurl }}";
@import "includes/contributor_list.scss";
@import "includes/image-pageheader.scss";
@import "includes/brand";
+@import "includes/homepage-dev-ui-band";
diff --git a/assets/images/dev-ui/build-container-image-dev-ui-dark.png b/assets/images/dev-ui/build-container-image-dev-ui-dark.png
new file mode 100644
index 00000000000..1bd2a7cfb9d
Binary files /dev/null and b/assets/images/dev-ui/build-container-image-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/build-container-image-dev-ui-light.png b/assets/images/dev-ui/build-container-image-dev-ui-light.png
new file mode 100644
index 00000000000..21bfcf2d096
Binary files /dev/null and b/assets/images/dev-ui/build-container-image-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/configuration-dev-ui-dark.png b/assets/images/dev-ui/configuration-dev-ui-dark.png
new file mode 100644
index 00000000000..ad464edcce9
Binary files /dev/null and b/assets/images/dev-ui/configuration-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/configuration-dev-ui-light.png b/assets/images/dev-ui/configuration-dev-ui-light.png
new file mode 100644
index 00000000000..e79ec4b3463
Binary files /dev/null and b/assets/images/dev-ui/configuration-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/configuration-source-editor-dev-ui-dark.png b/assets/images/dev-ui/configuration-source-editor-dev-ui-dark.png
new file mode 100644
index 00000000000..b79d2c839a5
Binary files /dev/null and b/assets/images/dev-ui/configuration-source-editor-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/configuration-source-editor-dev-ui-light.png b/assets/images/dev-ui/configuration-source-editor-dev-ui-light.png
new file mode 100644
index 00000000000..c8cc9ec25de
Binary files /dev/null and b/assets/images/dev-ui/configuration-source-editor-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/continuous-testing-dev-ui-dark.png b/assets/images/dev-ui/continuous-testing-dev-ui-dark.png
new file mode 100644
index 00000000000..ad7b4de5288
Binary files /dev/null and b/assets/images/dev-ui/continuous-testing-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/continuous-testing-dev-ui-light.png b/assets/images/dev-ui/continuous-testing-dev-ui-light.png
new file mode 100644
index 00000000000..97def8f0611
Binary files /dev/null and b/assets/images/dev-ui/continuous-testing-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/create-sql-script-dev-ui-dark.png b/assets/images/dev-ui/create-sql-script-dev-ui-dark.png
new file mode 100644
index 00000000000..0b3063a97a6
Binary files /dev/null and b/assets/images/dev-ui/create-sql-script-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/create-sql-script-dev-ui-light.png b/assets/images/dev-ui/create-sql-script-dev-ui-light.png
new file mode 100644
index 00000000000..d91b3487285
Binary files /dev/null and b/assets/images/dev-ui/create-sql-script-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/dependency-graph-dev-ui-dark.png b/assets/images/dev-ui/dependency-graph-dev-ui-dark.png
new file mode 100644
index 00000000000..d1f6e31972d
Binary files /dev/null and b/assets/images/dev-ui/dependency-graph-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/dependency-graph-dev-ui-light.png b/assets/images/dev-ui/dependency-graph-dev-ui-light.png
new file mode 100644
index 00000000000..d7a649bf728
Binary files /dev/null and b/assets/images/dev-ui/dependency-graph-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/dev-services-dev-ui-dark.png b/assets/images/dev-ui/dev-services-dev-ui-dark.png
new file mode 100644
index 00000000000..236d99fb8ab
Binary files /dev/null and b/assets/images/dev-ui/dev-services-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/dev-services-dev-ui-light.png b/assets/images/dev-ui/dev-services-dev-ui-light.png
new file mode 100644
index 00000000000..2ed34f93e57
Binary files /dev/null and b/assets/images/dev-ui/dev-services-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/endpoints-dev-ui-dark.png b/assets/images/dev-ui/endpoints-dev-ui-dark.png
new file mode 100644
index 00000000000..fff6ba8c4f9
Binary files /dev/null and b/assets/images/dev-ui/endpoints-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/endpoints-dev-ui-light.png b/assets/images/dev-ui/endpoints-dev-ui-light.png
new file mode 100644
index 00000000000..b1614ddd9ef
Binary files /dev/null and b/assets/images/dev-ui/endpoints-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/generate-k8-yaml-dev-ui-dark.png b/assets/images/dev-ui/generate-k8-yaml-dev-ui-dark.png
new file mode 100644
index 00000000000..be7f29d5cbd
Binary files /dev/null and b/assets/images/dev-ui/generate-k8-yaml-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/generate-k8-yaml-dev-ui-light.png b/assets/images/dev-ui/generate-k8-yaml-dev-ui-light.png
new file mode 100644
index 00000000000..04263caab3c
Binary files /dev/null and b/assets/images/dev-ui/generate-k8-yaml-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/keycloak-provider-page-dev-ui-dark.png b/assets/images/dev-ui/keycloak-provider-page-dev-ui-dark.png
new file mode 100644
index 00000000000..2bc748fe342
Binary files /dev/null and b/assets/images/dev-ui/keycloak-provider-page-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/keycloak-provider-page-dev-ui-light.png b/assets/images/dev-ui/keycloak-provider-page-dev-ui-light.png
new file mode 100644
index 00000000000..43b76625f7d
Binary files /dev/null and b/assets/images/dev-ui/keycloak-provider-page-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/modify-config-for-generating-kubernetes-manifest-dev-ui-dark.png b/assets/images/dev-ui/modify-config-for-generating-kubernetes-manifest-dev-ui-dark.png
new file mode 100644
index 00000000000..70aa994dc87
Binary files /dev/null and b/assets/images/dev-ui/modify-config-for-generating-kubernetes-manifest-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/modify-config-for-generating-kubernetes-manifest-dev-ui-light.png b/assets/images/dev-ui/modify-config-for-generating-kubernetes-manifest-dev-ui-light.png
new file mode 100644
index 00000000000..65bd75cbe4c
Binary files /dev/null and b/assets/images/dev-ui/modify-config-for-generating-kubernetes-manifest-dev-ui-light.png differ
diff --git a/assets/images/dev-ui/swagger-ui-dev-ui-dark.png b/assets/images/dev-ui/swagger-ui-dev-ui-dark.png
new file mode 100644
index 00000000000..167adcd49af
Binary files /dev/null and b/assets/images/dev-ui/swagger-ui-dev-ui-dark.png differ
diff --git a/assets/images/dev-ui/swagger-ui-dev-ui-light.png b/assets/images/dev-ui/swagger-ui-dev-ui-light.png
new file mode 100644
index 00000000000..9d0e949d794
Binary files /dev/null and b/assets/images/dev-ui/swagger-ui-dev-ui-light.png differ
diff --git a/dev-ui.md b/dev-ui.md
new file mode 100644
index 00000000000..b202476b874
--- /dev/null
+++ b/dev-ui.md
@@ -0,0 +1,6 @@
+---
+layout: dev-ui
+title: Dev UI
+subtitle: Making the right way the easiest way.
+permalink: /dev-ui/
+---
\ No newline at end of file