Briefly, this error occurs when Elasticsearch fails to authenticate a user or process trying to perform an action on indices due to incorrect or missing credentials. To resolve this, ensure that the correct credentials are provided in the request. If using X-Pack security, check that the user has the necessary permissions to perform the action. Also, verify that the Elasticsearch cluster’s security settings are correctly configured. If using a client, ensure it’s correctly configured to send the necessary authentication details.
This guide will help you check for common problems that cause the log ” {}[transport] [authentication_failed]\t{}; principal=[{}]; action=[{}]; indices=[{}]; request=[{}]{} ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: plugin.
Log Context
Log “{}[transport] [authentication_failed]\t{}; principal=[{}]; action=[{}]; indices=[{}]; request=[{}]{}” classname is DeprecatedLoggingAuditTrail.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :
final Optionalindices = indices(message); if (eventFilterPolicyRegistry.ignorePredicate() .test(new AuditEventMetaInfo(Optional.of(token); Optional.empty(); indices)) == false) { final LocalNodeInfo localNodeInfo = this.localNodeInfo; if (indices.isPresent()) { logger.info("{}[transport] [authentication_failed]\t{}; principal=[{}]; action=[{}]; indices=[{}]; request=[{}]{}"; localNodeInfo.prefix; originAttributes(threadContext; message; localNodeInfo); token.principal(); action; arrayToCommaDelimitedString(indices.get()); message.getClass().getSimpleName(); opaqueId()); } else { logger.info("{}[transport] [authentication_failed]\t{}; principal=[{}]; action=[{}]; request=[{}]{}"; localNodeInfo.prefix; originAttributes(threadContext; message; localNodeInfo); token.principal(); action;