我有一个网站是使用nodeJS后端创建的,但目前存在安全问题。
要使我的网站正常运行,我需要使用需要用户名,密码和安全码的第三方服务登录。我必须能够全天自动多次登录多个帐户才能使我的网站正常运行。我没有存储任何用户信息,这是我自己的帐户信息。
因此,将所有内容以纯文本格式存储在我的一个类中显然不是一个好主意,那么存储我的登录信息的最佳方法是什么?拥有只能使用内部数据在本地访问的数据库是一个不错的选择吗?正如我之前所说,它必须能够自动登录,所以我不确定哈希是否可以工作,因为代码无论如何都必须对其进行解密,所以如果我的代码公开了,这真的很重要吗?
在此先感谢您的帮助。
答案 0 :(得分:0)
存储密码可能不是一个好主意,因为即使您加密了密码, 加密密钥仍位于服务器中的某个位置。 您是否检查了第三方服务是否以oauth或等效身份提供身份验证流程?
答案 1 :(得分:0)
您基本上是在问“我如何在后端存储机密?”。
在本地,您将使用一个.env文件(该文件未提交版本控制)来存储您的机密(即“ USERNAME = JBallin”)。
然后,您将使用诸如dotenv之类的值将这些值提取到环境变量中,并在您的后端使用它们。
在生产中,您将这些环境变量存储在服务器上(指令取决于部署环境)。
答案 2 :(得分:0)
有一项新技术-密码强化加密(PHE)协议–一种功能强大且具有革命性的密码技术,可提供更强大,更现代的安全性,从而保护用户数据并减轻与弱密码相关的安全风险。
Virgil PureKit allows开发人员与Virgil PHE Service进行交互,以保护用户密码和数据库中敏感的个人身份信息(PII数据)免受脱机/在线攻击,并在数据库受到威胁时使被盗的密码/数据无用。 Virgil和攻击者都不了解用户的密码/数据。
我为您提供了链接,您可以在其中找到以下语言的代码段:Go,PHP,C#,Java