首页 / PHP / 使用PHP / PDO存储数据的安全性
使用PHP / PDO存储数据的安全性
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了使用PHP / PDO存储数据的安全性,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2225字,纯文字阅读大概需要4分钟。
内容图文
![使用PHP / PDO存储数据的安全性](/upload/InfoBanner/zyjiaocheng/806/0d916e9932b24b83bc6ae8bc097a86bb.jpg)
在研究了保存存储数据主题的几个小时后,我对现在最好的方法有点困惑.
我有一个数据库用于我的(SSL)网站,我是唯一一个可以访问它的人(黑客不计算在内).登录数据存储在文档根目录之外的配置文件中.在数据库中,我有来自客户的姓名和地址等内容,我现在担心我需要实施加密专家提出的所有安全措施,如本答复(How do you Encrypt and Decrypt a PHP String?)或此处(Storing sensitive data securely in a database)所述.
既然我的PDO / SQL和PHP研讨会也没有在stackoverflow上的常规帖子中,我看到这些加密和身份验证方法正在使用或更具体地说,例如在解释PDO和PHP命令(如INSERT INTO …等)时的键.我不确定现在是否有必要在我的数据库中的每个条目上部署加密和认证措施(之后是否可以这样做?).我在教程和文章中被告知的安全措施是使用PDO准备好的声明.
如果加密和身份验证是我必须要做的事情,那么情况可能就是这样:对于每个敏感数据条目简单地使用password_verify()和password_hash()是不是最方便,最快捷的方式,就像对密码一样?
编辑password_verify()和password_hash()是散列(非加密)方法,这意味着数据不可挽回地被破坏,只能被确认但不能被读取.
解决方法:
>由于您的Web服务器(可能)必须能够访问数据,因此当Web服务器可以(必须能够)对其进行解密时,在静态加密它是有些无用的.为什么?因为Web服务器通常是薄弱环节.如果攻击者可以访问它,他们可以做任何可以做的事情,包括解密数据.
>在静止时加密数据只对防止反向通道泄漏有用,例如不正确处理的备份(你正在做的,对,对吗?)将明文数据转储到文件中然后无意中丢失.为了防止您使用任何静态加密,您的数据库对客户端提供透明的;也就是说,如果它不是应用程序的组成部分,那么你应该为应用程序逻辑负担,这是数据库应该担心的问题.
> password_hash是一个哈希值,它不会对数据进行加密,它会无可挽回地破坏它,因此无法从中获取原始数据.它非常适合存储您需要确认但不能读取的凭据;它对其他任何东西都没用.
>主要的安全点是“物理地”隔离您的数据库服务器,即不从Web服务器以外的任何东西授予对它的任何访问权限;对此非常严格和具体.那意味着弱点就像你的网络服务器一样在那些入口点.确保您的Web服务器尽可能地被锁定,暴露尽可能少的攻击面(没有不必要的开放端口或运行服务),并且在其上运行的应用程序代码不允许任何漏洞利用(是的,这是困难的部分,需要知识和纪律).
>您可以通过使用具有不同权限级别的不同帐户隔离对数据库的访问来进一步收紧;即某些帐户只对某些表具有读访问权限,而其他帐户对其他表具有读/写访问权限.如果您可以将Web服务器拆分为单独的角色,这些角色只需要特定的有限访问权限,这可以通过避免一个部分中的漏洞在另一个部分中启用漏洞来进一步增强安全性.
内容总结
以上是互联网集市为您收集整理的使用PHP / PDO存储数据的安全性全部内容,希望文章能够帮你解决使用PHP / PDO存储数据的安全性所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。