elasticsearch - Kibana + OpenDistro JWT 身份验证
问题描述
有一些类似的问题,我将在下面列出。问题是:在启用 JWT(使用 OpenDistro)的情况下,没有 URL 可以登录 Kibana。
- 根据文档和示例,我的配置文件是正确的:
- 示例:https ://aws.amazon.com/blogs/opensource/json-web-tokens-jwt-authenticate-open-distro-for-elasticsearch-kibana/
- 文档:https ://opendistro.github.io/for-elasticsearch-docs/docs/security/configuration/configuration/#json-web-token
- 具有几乎相同参考的类似问题:在 Kibana Opendistro 中设置 JWT 身份验证
- Elastic 论坛上的类似问题:
- https://discuss.opendistrocommunity.dev/t/login-to-kibana-through-jwt/242/18
- https://discuss.opendistrocommunity.dev/t/jwt-authentication-for-kibana/5515/3
- 本文使用另一个脚本来生成令牌。但我希望 Kibana 为我生成令牌,就像 Basic Auth 功能已经完全正常工作一样,生成身份验证 cookie。
OpenDistro 插件中的代码,用于注册 JWT Auth 方法的路由:
export class JwtAuthRoutes {
constructor(
private readonly router: IRouter,
private readonly sessionStorageFactory: SessionStorageFactory<SecuritySessionCookie>
) {}
public setupRoutes() {
this.router.post(
{
path: `${API_PREFIX}${API_AUTH_LOGOUT}`,
validate: false,
options: {
authRequired: false,
},
},
async (context, request, response) => {
this.sessionStorageFactory.asScoped(request).clear();
return response.ok();
}
);
}
}
正如我所说,没有登录路径。为什么?目前还没有解决问题的正确答案:我想使用 JWT 登录 Kibana 界面,该界面由 Kibana 使用 OpenDistro 界面生成。
解决方案
推荐阅读
- django - WebSocket 连接到“ws:/”失败:WebSocket 握手期间出错:意外响应代码:200
- sql-server - 哪个 SQL Server 版本支持 varchar(MAX) 数据类型
- python - 将列表中具有值的列转换为按特定列分组的单独行
- python - Dask DataFrames vs numpy.memmap 性能
- asp.net-core-3.1 - “JsonException:无法将 JSON 值转换为 NodaTime.Instant”与 ASP.NET Core 3.1 Razor Page Web 应用程序有关的 NodaTime 问题
- java - 在每 8 个位置单击更改时查看颜色更改 RecyclerView
- python-3.x - influxdb - 列的顺序
- swift - 调用 AVAudioEngine.prepare() 时,AVAudioMixerNode 会自动与目标节点断开连接
- macos - 如何让VScode终端通过composer使用安装在Mac终端上的包
- php - 在我的主页上,我想显示一个“新闻”部分,其中包含过去 30 天内标记为“新闻”的帖子。如何?