Php 在web上安全地列出登录信息?

Php 在web上安全地列出登录信息?,php,mysql,html,Php,Mysql,Html,我真的不认为有一种方法可以安全地完成这项任务,但也许有一种更为开箱即用的方法来完成这项任务 我在一个项目管理网站上工作。其中一些项目是网站,因此客户希望能够显示ftp、数据库和托管信息。这需要我在网上显示未加密的用户名和密码。我显然看到了这其中的巨大风险,因为如果网站被破解,它所拥有的信息也可能摧毁其他网站 我认为实现这一点的一种方法是加密密码,然后创建一个应用程序,他们将在本地计算机上保存该应用程序以解密该密码。这真的是我能想到的唯一“安全”的方法。你肯定需要某种加密(SSL是一个很好的建议)

我真的不认为有一种方法可以安全地完成这项任务,但也许有一种更为开箱即用的方法来完成这项任务

我在一个项目管理网站上工作。其中一些项目是网站,因此客户希望能够显示ftp、数据库和托管信息。这需要我在网上显示未加密的用户名和密码。我显然看到了这其中的巨大风险,因为如果网站被破解,它所拥有的信息也可能摧毁其他网站


我认为实现这一点的一种方法是加密密码,然后创建一个应用程序,他们将在本地计算机上保存该应用程序以解密该密码。这真的是我能想到的唯一“安全”的方法。

你肯定需要某种加密(SSL是一个很好的建议)来保证密码的安全,但就在网上“查看”密码而言,你可以这样做:

让用户输入“站点密码”。您还可以使用验证码来防止机器人获取您的密码。这将允许他们在短时间内查看自己的密码,例如10秒。他们的密码将显示在一个输入框或某种类型的框中,该框将是只读的。他们应该不能复制/粘贴密码

在屏幕上显示用户名和密码信息无疑是一种安全风险,但这取决于您的信息对安全的敏感程度

另一个解决方案是,如果他们需要查看密码,他们需要在下次登录时更改密码。这将允许他们查看当前密码,但会消除密码被盗的安全风险,因为他们几乎会立即重置密码


当然,所有这一切都取决于信息的敏感程度。

也许您可以使用javascript库在客户端对数据进行加密/解密,要求用户在查看数据时输入密码对其进行本地解密,并在提交表单之前对其进行加密。这样,只有加密的数据才能通过网络传输,而不使用密码短语,您只能访问加密的数据。

最简单、最安全的方法是使用SSL

如果你不能走那条路线,你就需要想出自己的方法在运输过程中加密信息。这很难。你需要像Diffie Hellman钥匙交换这样的东西(http://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange),大量的素数供客户端选择,然后javascript使用交换的密钥对信息进行加密和解密。您可以通过预缓存javascript、从第三方下载javascript,以及(最好)执行校验和来确保您的JS没有被修改来改进这一点

但是,由于加密代码和素数是通过互联网以纯文本形式发送的,因此在发送过程中可能会对其进行修改,从而允许攻击者操纵帖子的发送位置以及信息的加密方式

简而言之,如果您不使用SSL,就无法保证信息的安全传输

你可能要做的一件事就是点击PGP。如果用户上传他们的公钥,您就可以安全地将消息返回给他们。这是因为PGP软件独立于浏览器/互联网。

  • 从安全传输的SSL开始
  • 在存储信息之前对其进行加密
  • 阅读一些关于黑客如何进入这些网站的文章,在你学到一个困难的教训之前,先堵住漏洞
  • 从不显示密码,您不需要。使用登录链接,您可以在其中包含令牌和检查,以确保单击它的用户具有适当的权限级别
示例:员工被解雇。他在屏幕上看到了所有的密码,感到很不安。对你的公司或以前的客户来说,情况不是很好


使用我的方法,用户可以捕获屏幕,复制链接,这将没有效果,因为他的令牌将被撤销,链接将无法工作。这样您的客户端站点更安全。

如果他们都可以安装本地应用程序,那么只需使用其中一个密码应用程序,让他们存储密码。我不明白为什么您需要显示此类信息。客户会用它做什么?您能给出较低权限的用户名/密码或一次性用户名/密码吗?我想我不太清楚你为什么要这么做。嗯,这是一个项目管理工具。因此,其目的是让一个系统能够跟踪当前正在进行的所有项目以及与之相关的所有信息。为什么不能简单地使用SSL?永远不要显示密码,如果用户
忘记了其密码,请使用密码重置机制,并用系统生成的密码发送电子邮件。没有一个严肃的系统会显示密码,也不需要。问题是他们在查看密码后无法更改密码。“登录/pw很可能是由其他人设置的,我们无权更改它。任何人都不应该考虑不使用SSL传输敏感信息的想法。”午餐丹说,显然,通过不安全的介质安全传输信息需要某种加密。SSL是一个很好的打包解决方案,但我们都知道世界上还有许多其他加密方案。通过HTTP使用这些是一种完全合理、安全的方法,尽管不方便。