📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 7.7-8.9

简而言之,当安全断言标记语言(SAML)认证请求缺少签发者时会出现此错误。签发者是生成SAML响应的实体的唯一标识符。没有它,Elasticsearch无法验证请求。要解决此问题,请确保SAML响应包含签发者。检查您的身份提供商(IdP)配置,确保它设置为在SAML响应中包含签发者。此外,验证您的Elasticsearch SAML设置是否正确配置以接受和验证签发者。

日志上下文 #

日志"SAML authentication request has no issuer"的类名是 SamlAuthnRequestValidator.java。 我们从Elasticsearch源代码中提取了以下内容,为那些寻求深入上下文的人提供参考:

});
 }  private void getSpFromAuthnRequest(Issuer issuer; String acs; ActionListenerlistener) {
 if (issuer == null || issuer.getValue() == null) {
 throw new ElasticsearchSecurityException("SAML authentication request has no issuer"; RestStatus.BAD_REQUEST);
 }
 final String issuerString = issuer.getValue();
 idp.resolveServiceProvider(issuerString; acs; false; ActionListener.wrap(serviceProvider -> {
 if (null == serviceProvider) {
 throw new ElasticsearchSecurityException(