gpt4 book ai didi

security - PHP用户管理系统

转载 作者:行者123 更新时间:2023-12-02 21:44:01 25 4
gpt4 key购买 nike

我正在最后一步打开我的网站,但唯一让我发疯的是 php 用户管理。我找到了很多关于构建这些系统的资源,我相信我可以用自己的方式编写它们。问题是,当谈到安全性时,我非常不知道该选择什么。例如,当涉及通过 SSL 发送敏感信息时,有些人建议确保注册表单中的信息经过加密,以便攻击者无法破解。还有一些人建议确保发生错误时不会显示调试消息,以便攻击者无法追溯链接等。

现在,当我从这里和那里读到 md5 不再安全时,所以我想知道如何散列新用户密码等...我找到了一些已经提供一些用户管理的程序员的链接,但不确定如果它们足够好,因为我优先考虑安全性 CodeCanyon

那么现在我必须关注哪些安全措施?有相关资源吗?

谢谢

最佳答案

您不必(您不应该)在人们告诉您实现的不同事情之间进行选择。良好的安全性始终是分层的,这意味着您可以实现尽可能多的保护。这种方法有多种目的。每一层可以防止不同的攻击。每一层都可以防止具有不同经验的攻击者。每一层都会增加攻击者所需的时间。

以下是一些对身份验证系统有用的提示。

  • 不显示调试输出
  • 不要使用 MD5 哈希值。 SHA2 甚至更好,bcrypt 更好
  • 存储密码时使用盐
  • 在表单上使用随机数(一次性 token )
  • 始终要求服务器和客户端之间进行 SSL 加密
  • 访问服务器上的数据库时,请确保不会发生信息泄露或客户端操纵(例如,避免注入(inject)攻击,配合数据库驱动使用准备声明等)
  • 确保所有失败的登录(无论出于何种原因)都花费相同的时间,以防止定时攻击
  • 当登录用户开始危险操作(更改密码、支付等)时,重新对其进行身份验证
  • 永远不要以明文形式存储密码,永远不要,任何地方都不要
  • 要求密码具有最低复杂度
  • >!!!保护您的 php session (另一个大主题,值得单独讨论)-

正如你所看到的,你可以做很多事情(而且更多的人可能会告诉你更多的东西),你真正应该做什么取决于你愿意接受的风险。但永远不要依赖单一的安全措施,始终采用分层方法。

关于security - PHP用户管理系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9157554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com