authentication - 吉普斯特 : Proper architecture to authenticate using an existing database

标签 authentication jwt jhipster microservices

我目前正在开发 Jhipster 原型(prototype)应用程序。该应用程序是一个简单的网关,具有用于访问数据的微服务。

现在,我想使用公司现有的数据库来验证用户身份,但 Jhispter 似乎不支持多个数据源(而且我不希望我的整个网关切换到另一个数据库)

我的第一个想法是使用微服务来验证用户身份。此微服务将在另一个数据库上运行,但这会产生另一个问题:要从网关调用此服务,我需要 JWT token ...这开始看起来像我需要进行身份验证才能对用户进行身份验证。

如前所述,另一种解决方案是在我的网关上有两个数据源:一个用于用户身份验证(指向现有数据库),另一个用于 Jhipster 相关数据(审核等)

您知道在这种情况下最佳做法是什么吗? 您能为我指明这个选择的正确方向吗?

最佳答案

第一个解决方案:您可以轻松地在微服务的 SecurityConfiguration 中取消对身份验证端点的保护,这样您就不需要 token ,然后您必须在网关上为/api/authenticate 创建 Zuul 路由。

第二个解决方案是一个关于在 Spring Boot 中使用多个数据源的众所周知的问题,它有许多有据可查的答案。

如果您可以将现有的第三方身份服务器(例如 uaa 或 KeyCloak)配置到现有的用户数据库,则可能还有另一种解决方案。

因此,对于原型(prototype),我会选择第二种解决方案。

关于authentication - 吉普斯特 : Proper architecture to authenticate using an existing database,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39742117/

相关文章:

java - 使用 AuthenticationManagerBuilder 的提供商订单

azure - 如何验证 Azure Active Directory 中刷新的 id_token 的签名

jhipster - 使用 Docker 时 Jhipster 应用程序中的数据库连接

node.js - 如何将 JWT 从客户端传递到我的 API 以进行正确身份验证?

angularjs - 将文件上传到 Jhipster 中的目录

angularjs - 如何在 JHipster UI 添加 DatePicker

python - Bigcommerce Api Python 基本认证

javascript - 如何从在 Android Webview 中运行的网站注销?

ios - 在 UITabBarController 之前呈现登录 View Controller

javascript - 将 JWT 存储为 localStorage 项目