第 9 章 KafkaListenerAuthenticationOAuth 模式参考
使用 in: GenericKafkaListener
type 属性是一种辨别器,它会区分来自 KafkaListenerAuthenticationTls, KafkaListenerAuthenticationScramSha512, KafkaListenerAuthenticationCustom 的 KafkaListenerAuthenticationOAuth 类型的使用。对于类型 KafkaListenerAuthenticationOAuth,它需要带有值 oauth。
| 属性 | 属性类型 | 描述 |
|---|---|---|
| type | string |
必须是 |
| clientId | string | Kafka 代理可用于对授权服务器进行身份验证的 OAuth 客户端 ID,并使用 introspection 端点 URI。 |
| clientSecret | 链接到包含 Kafka 代理可用于向授权服务器进行身份验证的 OAuth 客户端 secret 的 OpenShift Secret,并使用 introspection 端点 URI。 | |
| validIssuerUri | string | 用于身份验证的令牌签发者的 URI。 |
| checkIssuer | 布尔值 |
启用或禁用签发者检查。默认情况下,使用由 |
| checkAudience | 布尔值 |
启用或禁用受众检查。受众检查可识别令牌的接收者。如果启用了 audience 检查,还必须使用 |
| jwksEndpointUri | string | JWKS 证书端点的 URI,可用于本地 JWT 验证。 |
| jwksRefreshSeconds | 整数 |
配置刷新的 JWKS 证书的频率。刷新间隔必须至少为 60 秒,然后是 |
| jwksMinRefreshPauseSeconds | 整数 | 连续两个刷新之间的最小暂停。当遇到未知签名密钥时,将立即调度刷新,但总是等待这个最小暂停。默认值为 1 秒。 |
| jwksExpirySeconds | 整数 |
配置 JWKS 证书被视为有效的频率。到期间隔必须至少为 60 秒,然后在 |
| jwksIgnoreKeyUse | 布尔值 |
用于忽略 JWKS 端点响应中 |
| introspectionEndpointUri | string | 令牌内省端点的 URI,可用于验证不透明的非 JWT 令牌。 |
| userNameClaim | string |
来自 JWT 身份验证令牌、Introspection Endpoint 响应或用户信息端点响应的声明名称,用于提取用户 ID。默认为 |
| fallbackUserNameClaim | string |
如果 |
| fallbackUserNamePrefix | string |
用于值 |
| groupsClaim | string | 用于在身份验证期间提取用户的组的 jsonpath 查询。提取的组可由自定义授权器使用。默认情况下,不会提取任何组。 |
| groupsClaimDelimiter | string | 当以单个 String 值而不是 JSON 数组中提取时,用于解析组的分隔符。默认值为 ','(comma)。 |
| userInfoEndpointUri | string | 当 Introspection 端点没有返回可用于用户 ID 的信息时,用作回退的 User Info Endpoint 的 URI,以获取用户 id。 |
| checkAccessTokenType | 布尔值 |
配置是否执行访问令牌类型检查。如果授权服务器没有在 JWT 令牌中包含"typ"声明,则这应设为 |
| validTokenType | string |
Introspection Endpoint 返回的 |
| accessTokenIsJwt | 布尔值 |
配置访问令牌是否被视为 JWT。如果授权服务器返回不透明令牌,则必须将其设置为 |
| tlsTrustedCertificates | 用于 TLS 连接到 OAuth 服务器的可信证书。 | |
| disableTlsHostnameVerification | 布尔值 |
启用或禁用 TLS 主机名验证。默认值为 |
| enableECDSA | 布尔值 |
|
| maxSecondsWithoutReauthentication | 整数 |
在不重新身份验证的情况下,经过身份验证的会话保持有效的最大秒数。这可让 Apache Kafka 重新身份验证功能,并在访问令牌过期时导致会话过期。如果访问令牌在最大时间前过期,或者达到最大时间,客户端必须重新验证,否则服务器将丢弃连接。默认情况下不设置 - 经过身份验证的会话不会在访问令牌过期时过期。这个选项只适用于 SASL_OAUTHBEARER 身份验证机制(当 |
| enablePlain | 布尔值 |
启用或禁用 SASL_PLAIN 的 OAuth 身份验证。当使用此机制时,没有重新身份验证的支持。默认值为 |
| tokenEndpointUri | string |
当客户端使用 |
| enableOauthBearer | 布尔值 |
启用或禁用 SASL_OAUTHBEARER 的 OAuth 身份验证。默认值为 |
| customClaimCheck | string | 要应用到 JWT 令牌或内省端点的响应以进行额外令牌验证的 jsonpath 过滤器查询。默认不设置。 |
| connectTimeoutSeconds | 整数 | 连接到授权服务器时的连接超时(以秒为单位)。如果没有设置,则有效的连接超时为 60 秒。 |
| readTimeoutSeconds | 整数 | 连接到授权服务器时读取超时(以秒为单位)。如果没有设置,则有效读取超时为 60 秒。 |
| httpRetries | 整数 | 初始 HTTP 请求失败时尝试的最大重试次数。如果没有设置,则默认为不尝试任何重试。 |
| httpRetryPauseMs | 整数 | 重试失败的 HTTP 请求前需要暂停。如果没有设置,则默认为根本不暂停,而是立即重复请求。 |
| clientScope | string |
向授权服务器令牌端点发出请求时使用的范围。用于 Inter-broker 身份验证,并使用 |
| clientAudience | string |
向授权服务器令牌端点发出请求时使用的受众。用于 Inter-broker 身份验证,并使用 |
| enableMetrics | 布尔值 |
启用或禁用 OAuth 指标。默认值为 |
| failFast | 布尔值 |
启用或禁用 Kafka 代理进程的终止,因为启动过程中可能会恢复的运行时错误。默认值为 |
| includeAcceptHeader | 布尔值 |
Accept 标头是否应该在请求中设置到授权服务器。默认值为 |
| serverBearerTokenLocation | string | 本地文件系统上的文件路径,其中包含要在向授权服务器进行身份验证时要使用的 bearer 令牌,而不是客户端 ID 和 secret。 |
| userNamePrefix | string |
与 |