提问人:ThomasTe 提问时间:6/3/2023 更新时间:6/5/2023 访问量:42
如何保护在php / mysql中制作的哈希密钥和Web应用程序
How to secure hash key and web app made in php/mysql
问:
我正在考虑在 php 和 MySQL 中创建一个 Web 应用程序。 这个应用程序将管理和存储(在MySQL中)敏感的个人信息,所以我有点担心安全性。 我正在考虑在将信息存储在数据库中之前使用php自己的openssl_encrypt()对信息进行加密。 然后,挑战在于在哪里保存密钥。 我正在考虑将密钥存储在存储在public_html以外的其他目录中的文件中,例如父文件夹。 对于这样的解决方案来说,这是否足够安全,存储敏感的个人信息? 例如,如果我在Siteground上托管了这个文件,那么他们的支持人员将可以访问此文件怎么办?
谢谢。
答:
根据您的描述,我考虑了以下选项:
非公共文件夹中的文件:您可以将密钥放在公共网站文件夹中的文件中。但是,可以访问您的文件的人(例如您的托管服务提供商)可能仍会看到它。
环境变量:这些类似于服务器上的隐藏设置。你可以把密钥放在那里,它比文件更安全一些。
密钥管理系统:这些是确保您的密钥安全的特殊服务。AWS或Google Cloud等一些云提供商拥有它们。
保管库:这是一个用于存储机密的工具。即使是最强大的用户也无法直接访问机密。
在任何情况下,您都需要定期对您的应用程序进行渗透测试,最低限度是保护您的 PHP 应用程序,以防止常见的 OWASP 攻击,例如 SQL 注入,并始终使用安全连接 (HTTPS)。
请记住,如果您正在处理敏感数据,则需要遵守有关数据隐私的法规,具体取决于您的生产运营所在的国家/地区,例如欧洲的 GDPR。相关的咨询将是一个好主意。
上一个:零访问加密和“忘记密码”部分
评论