2017-06-28 36 views
0

我目前处于利用微服务架构的系统的早期阶段。将用户名和密码存储在单独的数据库中

我正在实施用户登录系统。我的想法是有一个服务处理所有不敏感的用户信息(例如用户名,电子邮件,年龄等),然后有另一个处理密码的服务(例如存储它们,加密,验证等)。

有了这个架构将意味着用户数据和密码将被存储在两个完全独立的数据库。

我认为这是一种可行的方法,可以提高安全性。

这种方法矫枉过正吗?很明显,我将会使用密码和哈希密码,但是完全分开存储这些密码会带来另一个级别的安全性。

这种方法有什么缺点吗?

回答

0

这种将证书存储在单独数据库中的方法确实可以使您的应用程序更安全。这实际上取决于它是如何实现的,以及攻击者可以获得什么特权。

一个例子是SQL注入,可能很难让你的整个应用程序防弹的,但它很容易使获得安全证书的唯一请求。通常攻击者可以在发现泄漏时获取证书,而不是证书存储在单独的数据库中。

如果攻击者在服务器上的特权,可能没有优势,但我看不出任何缺点都不是。

0

如果你的目标是提高安全性我会建议反对建立自己的用户登录系统。不过,我认为将认证/授权与配置文件分开是个好主意。

+0

什么是建立我自己的选择?我不想使用OAuth2和更大的提供者系统。 – mwild

相关问题