问题标签 [elasticsearch-x-pack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
590 浏览

elasticsearch - 在 ElasticSearch 上创建具有有限搜索功能的 API 密钥

我想通过 POST _security/api_key API 在 elasticsearch 上创建 API 密钥,我可以创建这些,但我想限制对生成的密钥的搜索能力,但我无法做到。

本质上,我想要实现的是假设我的所有记录都有一个类似"username":"username1"或另一个类似的字段,即所有记录都将具有用户名字"username":"username2"的有效值

现在我想要的是能够创建一个键,我在其中指定类似的"username":"username2"内容,然后将其附加到使用该键作为 AND 案例进行的每个搜索查询中,例如该键搜索 (/index_name/_search)

此查询实际上是以下两者的 AND(即,如果存在具有此组合的记录"key_zz":"value_aa"但 username 的值不是username2 则 API 不会返回该对象)

我尝试使用以下所有组合创建密钥:

在查询字段中,我尝试了以下所有组合:

但以上都没有奏效。另外,之前用户名字段的映射类型是文本,但后来我将其更新为关键字

简而言之,我想要实现的是某种文档级别的安全性。我知道 ElasticSearch 具有某种文档级安全性(https://www.elastic.co/guide/en/elastic-stack-overview/current/document-level-security.html),但在我们的架构中,我们希望实现这使用具有受限搜索功能的 API 密钥。我们目前正在使用 Algolia,并且我们正在使用我上面描述的确切实现来实现这一点。ElasticSearch 文档有关于如何限制角色的参考资料,但没有关于如何限制 API 密钥的参考资料。需要帮助来实现这一目标。

另外,我正在使用 ElasticSearch v7

一些参考链接:

  1. https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-api-key.html
  2. https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-role.html
0 投票
1 回答
940 浏览

java - NoSuchAlgorithmException[1.2.840.113549.1.1.1 KeyFactory 不可用];

我正在使用配置了 SSL 的弹性搜索 5.6.15。我启动并运行了集群,并且从我的客户端服务器上我可以使用 curl 检查弹性集群的运行状况。

弹性搜索文档 https://www.elastic.co/guide/en/x-pack/5.6/java-clients.html

代码尝试

但是,当我尝试使用上面的代码调用弹性搜索集群时,它给了我以下异常:

0 投票
1 回答
2405 浏览

elasticsearch - ElasticSearch xpack.security.enabled: true 启动错误

我想为我的弹性搜索设置密码。我还没有付费或开始免费试用,所以我想我默认使用的是基本计划。我已按照官方指南在 ubuntu EC2 上安装 elasticsearch。我不认为我已经安装了 OSS 版本,但是当我运行时:

它不打印 xpack。

我尝试删除和安装 ElasticSearch clean,以防我设置错误。我对 elasticsearch.yml 所做的唯一事情是添加:xpack.security.enabled:true

systemctl start elasticsearch.service但是通过输出此错误消息启动弹性搜索:

同样在我添加之后xpack.security.enabled:true,列表插件会显示此错误消息:

这是我的 elasticsearch.yml:

我需要做什么才能成功启动弹性搜索?先感谢您

0 投票
0 回答
122 浏览

elasticsearch - 如何为通过服务相互通信的 2 组 Statefulset 的 Pod 创建自签名证书

我正在尝试保护 Elasticsearch、Logstash、Filebeat 和 Kibana 之间的通信。我已经使用certutil根据此博客生成了证书,但是当我的服务尝试与的数据节点服务通信时,我收到以下错误:x-packlogstashelasticsearch

主机名 'elasticsearch' 与对等方提供的证书主题不匹配 (CN=elasticsearch-data-2)"

我知道这是一个非常常见的错误,我尝试了多种方法但无法找到解决方案。我对应该提供什么CN以及SAN应该提供什么感到困惑,这样我的所有数据节点、主节点、logstash 和 kibana 实例都可以相互通信。

PS:我有 1 个状态集(elasticsearch-data,elasticsearch-master),每个 ES 数据节点和主节点都有一个 ClusterIP 服务(elasticsearch,elasticsearch-master)。

0 投票
0 回答
245 浏览

elasticsearch - 使用 XPack 在 K8S 上进行 Elasticsearch

我对在 kubernetes 上设置 ES 的疑问很少,因为我们目前在我们的 3 个主节点、2 个数据和 2 个客户端节点配置中启用基本安全性时遇到问题 1 版本 6.8.4 或 7.4.2 是否支持 helm chart/elasticsearch ? 2 我们如何通过设置 Xpack 来利用作为基本许可证一部分的用户身份验证。启用:真选项?目前使用默认设置(3 个主节点和 2 个数据节点以及 2 个客户端),我们无法让任一 pod 处于就绪状态。禁用 xpack.enabled 选项后,一切正常。3 除了 xpack.enabled: true, 还有其他设置吗?允许状态集按预期运行?4 是否有规定允许使用 Kubernetes 机密创建的内置用户机密?我们如何确保 ES 管理员知道这些秘密的值?5 如果我想用elastic的helm chart替换现有的chart(如预弃用通知中所述),我们如何确保部署数据节点?目前我无法看到数据节点或任何配置的状态集。

0 投票
1 回答
398 浏览

java - ES 7.4.1 - 身份验证 [Rest API]

0 投票
1 回答
56 浏览

elasticsearch - Elasticsearch 搜索请求仅限于某些服务器 IP

是否可以在 elasticsearch 中创建某种过滤器,以便仅当请求来自受信任的 IP(仅限某些服务器)时才会尊重搜索请求。

但是,我参考了这篇文章,想检查最新版本是否具有此功能,我在弹性文档中找不到任何内容。

注意:我在集群中有超过 1 个弹性服务器。

0 投票
1 回答
41 浏览

elasticsearch - elasticsearch 默认凭据

我发现 ES 的默认凭据是 elastic:changeme 但它对我不起作用!我错过了什么吗?错误 :

0 投票
0 回答
198 浏览

elasticsearch - Azure Databricks 诊断审核日志上的异常检测

我有很多来自我正在管理的 Azure Databricks 群集的审核日志。日志是简单的应用程序审计日志,格式为JSON. 您有关于作业、集群、笔记本等的信息,您可以在此处查看一条记录的示例:

目前,我将日志存储到 Elasticsearch 中,并计划在此类日志上使用他们的异常检测工具。因此,我不需要实现任何算法,而是选择正确的属性,或者执行正确的聚合,或者使用多变量分析组合更多属性。但是,我不熟悉此类主题,也没有此背景。我已阅读异常检测:Chandola 等人的调查。,这对于将我指向正确的子字段非常有用。因此,我明白我正在处理时间序列,并且根据我将执行的聚合类型,我可能会面临序列数据的集体异常(例如:ActionName这些日志的字段)或序列数据的上下文异常。

我想知道您是否可以为我指明正确的方向,因为我还没有设法在审计日志上找到任何与异常检测相关的工作。更具体地说,我应该调查什么样的异常?哪种聚合将是有益的?

请记住,我有大量数据。此外,我将不胜感激任何形式的反馈,即使它不涉及 Elasticsearch;因此,请随意为这种异常检测场景提出一个完整的无监督机器学习方法,而不是 Elasticsearch 的简单用例。

0 投票
1 回答
382 浏览

authentication - 使用 Elastic Search X-Pack 进行最终用户身份验证

我正在构建一个搜索应用程序。我希望我们的最终用户能够查询 Elastic Cloud 上的 Elastic 索引。我想允许用户访问某些索引而不是其他索引。我看到 X-Pack 包含在我们付费的 Elastic Cloud 帐户中。哪里有一个很好的例子或教程来说明如何验证最终用户?

我们想以最简单的方式做到这一点。例如,如果可以创建和使用 JSON Web 令牌 (JWT),我们将更喜欢这种方法。