docker - Elasticsearch 保护连接
问题描述
我(非常)是elasticsearch(7.9.0)的新手,我目前有一个运行两个节点的集群。经过大量的努力,它的表现正如我所愿。
它在 docker 上运行,并且前面还有一个nginx来将流量路由到它,因为它是直接从我的网站(角度 10)访问的。弹性搜索也直接通过 docker 容器名称从我的laravel后端使用,这样是安全的(我猜)。
我现在的问题是我无法找到或理解从外部 docker(例如普通网站)保护 http 访问的方法。
通过Laravel是一种选择,但这对我来说太慢了。有没有一种方法可以让我从网络安全地通过 http 访问弹性搜索?
另外,有没有办法可以将操作限制为只读操作?如果您需要更多信息来提供帮助,请告诉我,因为我不知道这里什么重要,什么不重要。
谢谢
解决方案
Angular 是一个前端,在用户的网络浏览器中运行。如果 Angular 能够以某种方式访问您的 Elasticsearch 实例,那么每个人都可以这样做。无论。您可以尝试尽可能多地隐藏它,但如果直接暴露于 Elasticsearch,它将是可以访问的。
所以你必须要么假设这个事实,要么走慢路,将请求代理到 Laravel,这样它就可以验证请求的信息是否真的可用于执行请求的用户。
推荐阅读
- java - 我怎么知道 url 导致了 portlet spring mvc liferay 的 @RenderMapping render() 方法的调用?
- c# - C# 检索 HTML 电子邮件正文中的字段的可行方法
- r - 当 x 值是一个因素时,箱线图后面的平均加/减 sd 的功能区
- dataweave - 将入站 XML 条件映射到 JSON
- c# - 将空/无设置为查找字段
- javascript - 无法通过 ajax 正确显示数据
- spring-cloud - Spring 客户端无法注册 Eureka (MiniShift)
- c# - ObjectListView 从另一个模型对象接收拖动
- statistics - 为变量分配权重
- php - 刷新后文本框不会变为空