版本: 6.8-8.9
简而言之,当Elasticsearch收到没有适当认证的请求时,会出现此错误。这可能是由于凭据缺失、不正确或已过期导致的。要解决此问题,请确保为请求提供了有效的凭据。如果使用API密钥,请检查它是否已过期。如果使用基本身份验证,请验证用户名和密码。此外,请检查Elasticsearch安全设置,确保用户具有执行所请求操作所需的权限。
日志上下文 #
日志"没有认证用户"的类名是 RestGetUserPrivilegesAction.java。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入了解上下文的人参考:
@Override
public RestChannelConsumer innerPrepareRequest(RestRequest request; NodeClient client) throws IOException {
final User user = securityContext.getUser();
if (user == null) {
return restChannel -> { throw new ElasticsearchSecurityException("there is no authenticated user"); };
}
final String username = user.principal();
final GetUserPrivilegesRequestBuilder requestBuilder = new GetUserPrivilegesRequestBuilder(client).username(username);
return channel -> requestBuilder.execute(new RestListener(channel));
}





