1.6. 配置参考
1.6.1. OIDC 客户端
在构建时修复的配置属性 - 所有其他配置属性在运行时可覆盖
配置属性 | 类型 | default |
如果启用了 OIDC 客户端扩展。
环境变量: | 布尔值 |
|
OpenID Connect (OIDC)服务器的基本 URL,例如
环境变量: | string | |
发现 OIDC 端点。如果没有启用,您必须单独配置 OIDC 端点 URL。
环境变量: | 布尔值 |
|
OIDC 动态客户端注册端点的相对路径或绝对路径或绝对路径 URL。如果
环境变量: | string | |
尝试初始连接到 OIDC 服务器的持续时间。例如,将持续时间设置为
环境变量: | ||
如果临时丢失,重试重新建立现有 OIDC 连接的次数。与
环境变量: | int |
|
当前 OIDC 连接请求超时的秒数。
环境变量: |
| |
是否应该对 worker 线程执行 DNS 查找。当您可以看到由 HTTP 请求到 OIDC 服务器阻止的 Vert.x 事件循环的日志记录警告时,请使用这个选项。
环境变量: | 布尔值 |
|
WebClient 使用的连接池的最大大小。
环境变量: | int | |
当 WebClient 获取 HTTP 302 时,自动关注重定向。当此属性只禁用到完全相同原始 URI 的单个重定向时,才允许在重定向请求期间设置了一个或多个 Cookie 时。
环境变量: | 布尔值 |
|
签发访问和刷新令牌的 OIDC 令牌端点;指定为相对路径或绝对 URL。如果
环境变量: | string | |
OIDC 令牌撤销端点的相对路径或绝对路径 URL。
环境变量: | string | |
应用程序的客户端 ID。每个应用都有一个客户端 ID,用于标识应用程序。如果
环境变量: | string | |
应用的客户端名称。它代表应用程序的人类可读描述,您可以在 OpenId Connect 供应商的仪表板中注册应用程序(客户端)时提供。例如,您可以将此属性设置为具有更详细的日志消息,记录给定客户端的活动。
环境变量: | string | |
唯一的 OIDC 客户端标识符。它必须在 OIDC 客户端动态创建时设置,并在所有其他情况下是可选的。
环境变量: | string | |
如果启用了此客户端配置。
环境变量: | 布尔值 |
|
访问令牌范围列表
环境变量: | 字符串列表 | |
刷新令牌时间偏移。如果启用了此属性,则配置的持续时间转换为秒,并在检查访问令牌是否应刷新时添加到当前时间。如果总和超过此访问令牌的过期时间,则会进行刷新。
环境变量: | ||
相对于当前时间的访问令牌到期期限。只有在访问令牌授权响应不包括访问令牌到期属性时,才会检查此属性。
环境变量: | ||
访问令牌到期时间偏移,可添加到计算的令牌到期时间。
环境变量: | ||
如果访问令牌 'expires_in' 属性应检查为绝对时间值,而不是相对于当前时间的持续时间。
环境变量: | 布尔值 |
|
授权类型
环境变量: | Client: 'client_credentials' 授权只需要 OIDC 客户端身份验证 Password: 'password' 授权需要 OIDC 客户端和用户('username' 和 'password')身份验证 Code: 'authorization_code' 授权需要 OIDC 客户端身份验证,以及至少 'code' 和 'redirect_uri' 参数,它们必须在令牌请求时传递给 OidcClient。 Exchange: 'urn:ietf:params:oauth:grant-type:token-exchange' 授权需要 OIDC 客户端身份验证,以及至少 'subject_token' 参数,该参数必须在令牌请求时传递给 OidcClient。 JWT: 'urn:ietf:params:oauth:grant-type:jwt-bearer' 授权需要 OIDC 客户端身份验证,以及至少一个 'assertion' 参数,该参数必须在令牌请求时传递给 OidcClient。
refresh: 'refresh_token' 授权需要 OIDC 客户端身份验证和刷新令牌。请注意,如果访问令牌获取响应包含刷新令牌,OidcClient 默认支持此授权。然而,在某些情况下,会提供带外的刷新令牌,例如,它可以在多个机密客户端的服务之间共享,等等。如果 'quarkus.oidc-client.grant-type' 设置为 'refresh',则 ciba: 'urn:openid:params:grant-type:ciba' 授权需要 OIDC 客户端身份验证,以及 'auth_req_id' 参数,该参数必须在令牌请求时传递给 OidcClient。 device: 'urn:ietf:params:oauth:grant-type:device_code' 授权需要 OIDC 客户端身份验证,以及 'device_code' 参数,该参数必须在令牌请求时传递给 OidcClient。 | client |
令牌授权响应中的访问令牌属性名称
环境变量: | string |
|
在令牌授权响应中刷新令牌属性名称
环境变量: | string |
|
令牌授权响应中的访问令牌到期属性名称
环境变量: | string |
|
在令牌授权响应中刷新令牌到期属性名称
环境变量: | string |
|
授权选项
环境变量: | Map<String,Map<String,String>> | |
要求所有使用"OidcClient"的过滤器在后结构初始化时获取令牌,在使用这些令牌之前可能会比较长。如果访问令牌在第一次使用并且没有刷新令牌可用之前过期,则应禁用此属性。
环境变量: | 布尔值 |
|
必须发送到令牌端点的自定义 HTTP 标头
环境变量: | Map<String,String> | |
类型 | default | |
代理的主机名或 IP 地址。
环境变量: | string | |
代理的端口号。默认值为
环境变量: | int |
|
如果代理需要身份验证,则用户名。
环境变量: | string | |
如果代理需要身份验证,则密码。
环境变量: | string | |
类型 | default | |
要使用的 TLS 配置的名称。
如果配置了名称,它会使用来自 默认 TLS 配置 不会被使用。
环境变量: | string | |
类型 | default | |
环境变量: | string | |
客户端机密值。如果设置了
环境变量: | string | |
CredentialsProvider bean 名称,只有在注册了多个 CredentialsProvider 时才应设置
环境变量: | string | |
CredentialsProvider 密钥环名称。只有在使用的 CredentialsProvider 需要密钥环名称来查找 secret 时,才需要密钥环名称,这通常是当一个 CredentialsProvider 被多个扩展共享时,才需要多个扩展从更多动态源(如 vault 实例或 secret manager)检索凭证时。
环境变量: | string | |
CredentialsProvider 客户端 secret 密钥
环境变量: | string | |
身份验证方法。如果设置了
环境变量: |
基本:
post:
post-jwt: query :客户端 ID 和 secret 作为 HTTP 查询参数提交。这个选项只支持 OIDC 扩展。 | |
JWT 令牌源:OIDC 供应商客户端或现有的 JWT bearer 令牌。
环境变量: |
Client: JWT 令牌由 OIDC 供应商客户端生成,以支持 bearer: JWT bearer 令牌用作客户端断言 :https://www.rfc-editor.org/rfc/rfc7523#section-2.2。 | client |
具有 JWT bearer 令牌(应用作客户端断言)的文件路径。此路径只能在 JWT 源(
环境变量: | path | |
如果提供,则表示 JWT 使用 secret 密钥进行了签名。它与键 ,
环境变量: | string | |
CredentialsProvider bean 名称,只有在注册了多个 CredentialsProvider 时才应设置
环境变量: | string | |
CredentialsProvider 密钥环名称。只有在使用的 CredentialsProvider 需要密钥环名称来查找 secret 时,才需要密钥环名称,这通常是当一个 CredentialsProvider 被多个扩展共享时,才需要多个扩展从更多动态源(如 vault 实例或 secret manager)检索凭证时。
环境变量: | string | |
CredentialsProvider 客户端 secret 密钥
环境变量: | string | |
私钥的字符串表示。如果提供,则表示 JWT 是使用 PEM 或 JWK 格式的私钥签名的。它与
环境变量: | string | |
如果提供,则表示 JWT 是使用 PEM 或 JWK 格式的私钥签名的。它与
环境变量: | string | |
如果提供,则表示 JWT 使用密钥存储中的私钥签名。它与
环境变量: | string | |
指定密钥存储文件的密码的参数。
环境变量: | string | |
私钥 ID 或别名。
环境变量: | string | |
私钥密码。
环境变量: | string | |
JWT 受众(u
环境变量: | string | |
添加为 JWT
环境变量: | string | |
添加为 JWT 的签名密钥的签发者
环境变量: | string | |
添加为 JWT
环境变量: | string | |
其他声明.
环境变量: | Map<String,String> | |
用于
环境变量: | string | |
JWT 生命周期(以秒为单位)。这个值添加到发出 JWT 的时间,以计算过期时间。
环境变量: | int |
|
如果为 true,则客户端身份验证令牌是 JWT bearer 授权断言。不生成 'client_assertion' 和 'client_assertion_type' 表单属性,而是只生成 'assertion'。这个选项只支持 OIDC 客户端扩展。
环境变量: | 布尔值 |
|
要写入持续时间值,请使用标准 java.time.Duration
格式。如需更多信息,请参阅 Duration#parse ()Java API 文档。
您还可以使用简化的格式,从数字开始:
- 如果值只是一个数字,它代表时间(以秒为单位)。
-
如果值为数字,后跟
ms
,代表时间(毫秒)。
在其他情况下,简化的格式被转换为 java.time.Duration
格式以进行解析:
-
如果该值是一个数字,后跟
h
、m
或s
,则前缀为PT
。 -
如果值为数字,后跟
d
,则会以P
为前缀。
1.6.2. OIDC 令牌传播
在构建时修复的配置属性 - 所有其他配置属性在运行时可覆盖
配置属性 | 类型 | default |
如果启用了 OIDC Token Reactive Propagation。
环境变量: | 布尔值 |
|
在
例如,您可能需要使用 请注意,这个功能依赖于重复的上下文。有关 Vert.x 重复上下文的更多信息,请参阅本指南。
环境变量: | 布尔值 |
|
使用 "urn:ietf:params:oauth:grant-type:token-exchange" 或 "urn:ietf:params:oauth:grant-type:jwt-bearer" 令牌授权来交换新令牌的当前令牌。
环境变量: | 布尔值 |
|
配置的 OidcClient 的名称。请注意,只有在启用
环境变量: | string |