版本: 7.2-8.9
简而言之,当 Elasticsearch 无法定位到具有指定发行者(issuer)的 OpenID Connect 域时,就会出现这个错误。这可能是由于配置设置不正确或域未正确设置导致的。要解决这个问题,您可以验证 Elasticsearch 中的 OpenID Connect 域配置,确保发行者被正确指定。此外,检查域是否已正确设置并处于活动状态。如果没有,您可能需要创建或重新激活它。最后,确保在进行任何配置更改后重启了 Elasticsearch 集群。
日志上下文 #
日志 “Cannot find OpenID Connect realm with issuer [{}]” 的类名是 TransportOpenIdConnectPrepareAuthenticationAction.java. 我们从 Elasticsearch 源代码中提取了以下内容,供那些需要深入了解上下文的人使用:
.filter(r -> r instanceof OpenIdConnectRealm && ((OpenIdConnectRealm) r).isIssuerValid(request.getIssuer()))
.map(r -> (OpenIdConnectRealm) r)
.toList();
if (matchingRealms.isEmpty()) {
listener.onFailure(
new ElasticsearchSecurityException("Cannot find OpenID Connect realm with issuer [{}]"; request.getIssuer())
);
return;
} else if (matchingRealms.size() > 1) {
listener.onFailure(
new ElasticsearchSecurityException("Found multiple OpenID Connect realm with issuer [{}]"; request.getIssuer())





