首页 > 解决方案 > 将 Auth Token 与多个 RESTheart 实例一起使用

问题描述

我想知道当还有多个 RESTheart 实例时如何使用 Auth Token。目前我们有多个实例部署到 Kubernetes 并使用入口定义使它们可用。我们不想为了能够使用所有实例而使用粘性会话。

关于文档https://restheart.org/learn/clients-authentication/我们也可以使用用户名:密码发送基本身份验证。但是,尽管如此,我们想知道如何实现您在此处提到的分布式身份验证令牌缓存。有没有这方面的例子?或者有什么提示?

问候, 克里斯蒂安

标签: restheart

解决方案


如文档中所述:

在多节点部署(水平可扩展性)的情况下,请注意身份验证令牌。在这种情况下,您需要禁用它或使用具有粘性会话选项的负载均衡器或使用分布式身份验证令牌缓存实现(当前版本中尚不可用,但您可以寻求支持)。

jira 项目的任务是https://softinstigate.atlassian.net/browse/RH-51

RESTHeart 将缓存用于不同目的(例如,数据库和集合属性、基于数据库的 IDM、会话令牌身份验证)。这些通常使用番石榴缓存实现。

这些是可能在集群部署中造成问题的本地缓存。我们需要允许通过配置指定实际的缓存实现。

然后我们可以有不同的实现:

  • 本地番石榴缓存
  • 分布式缓存(例如,实现 JCache 规范)
  • 通过 mongodb 集合在不同实例之间同步数据的缓存。请注意,从 mongo v3.6 开始,更改流允许通知数据更改

推荐阅读