【问题标题】:How to set up a web-based password database如何设置基于 Web 的密码数据库
【发布时间】:2011-06-04 00:02:06
【问题描述】:

我目前正在考虑使用 Web 驱动的密码数据库,该数据库具有多个帐户,并且登录名/密码存储在 MySQL 或 Oracle 等数据库引擎中。每个密码应该只对部分用户可用:

用户 A 登录,创建一个新的登录信息并勾选一些复选框以使用户 B 和用户 C 可以使用此信息。用户 D 和 E 不应该看到它。

我的第一个想法:

密码以加密方式存储在数据库中。

当然,这里的主要问题是,如果您可以访问服务器,则可以查看脚本并检测解密算法,使您能够一次解密所有存储的密码。

所以我想,每个用户都会获得一个密码工具的主密码,这是加密/解密算法的一部分(用户输入这个主密码并使用他自己的凭据登录)。这样做的好处是,第三人不能像他必须知道主密码那样简单地查看脚本来了解它们是如何被解密的。但当然,访问权限非常有限的用户仍然可以解密所有密码,因为他们知道主密码。

所以基本上我的问题是:如果有人可以访问服务器,怎么可能拥有一个基于网络的多用户密码数据库,而不仅仅是通过查看普通来源轻松破解?是否有可能使解密以某种方式依赖于可以正式看到密码的用户登录?

感谢您对此的任何提示!

通知让事情更清楚: 它旨在成为一个密码数据库,其中存储了不同应用程序的登录凭据,用户可以登录并查看他们必须为这些应用程序使用哪些凭据。像 1Password 等密码管理工具。它只是一个带有用户名/密码的简单查找表,不应插入或与第三方应用程序交互。

【问题讨论】:

标签: security web-applications passwords password-protection


【解决方案1】:
【解决方案2】:

使用单向哈希算法,例如 MD5SHA-1(或其一些更强的变体)。这样,就无法对存储的密码进行逆向工程。

【讨论】:

  • 我在上面添加了一条通知 - 它旨在成为一个密码管理工具,因此登录凭据在登录后必须对用户可读/可见。
【解决方案3】:

你看过Passwordstate这样的产品吗?所有密码都在数据库中加密,可以在多人之间共享,所有页面都经过模糊处理以进一步保护,并与 Active Directory 集成以进行身份​​验证。

如果您想查看的话,有一个免费的 10 用户许可证。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-04
    • 1970-01-01
    • 2015-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-09
    • 1970-01-01
    相关资源
    最近更新 更多