本地客户端服务器节点安全认证

时间:2018-07-08 21:01:25

标签: node.js mongodb security https client-server

我目前正在开发一个基于MEAN堆栈的软件套件,该套件旨在在本地运行(该应用程序不会在网络上部署)。

下面提到的节点应用程序将使用pkg(npm软件包)编译为可执行文件。我尚未确认此软件包是否可以为我的节点应用程序提供任何安全性。

项目的架构如下:

Architecture

  • 在locahost端口3000上运行的Node Client
  • 在本地主机端口5000上运行的Node Api
  • 默认端口27017上的本地mongodb。
  • 用于记录数据以传输到数据库的本地桌面应用程序。

我需要满足这些最终要求:

  • 用户不应直接访问数据库,而只能查看 通过其本地客户端访问数据。
  • 该api应该只与我的客户端,我的应用程序和我的数据库通信。需要有一些机制来验证api的客户端。

所以,我想我需要一种在这些组件之间建立安全连接而不必在应用程序内的文件中保存凭据的方法。

我了解如何向Mongodb添加身份验证,但是我想不出一种方法来避免必须在代码中以明文形式包含这些凭据。关于用于客户端服务器验证的.crt和.key文件,我处于相同的情况。 如果我缺少明显的东西,请原谅我,它对我来说已经进入了隧道视野阶段,我只需要一些新鲜的眼睛即可。

如果有人能指出正确的方向,我将不胜感激。

谢谢。

1 个答案:

答案 0 :(得分:0)

我建议使用 json网络令牌进行身份验证。参考:https://jwt.io/ 如果您在Google上进行快速搜索,就会从该主题中找到不错的文章。