最近几天我一直在阅读关于密码安全方面的文章,但这些文章中的评论通常很长,难以确定一个明确的答案。
总的来说,建议采取以下做法:
1.将数据库连接密码存储在文档根目录之上的一个单独的配置文件中。该文件不受版本控制,并受到文件系统权限的保护。
2.使用已证实的安全哈希算法对用户密码进行哈希处理,并使用对每个密码都唯一的盐进行处理。
我不想再次讨论已经被问过和回答过的那些问题,所以我不想详细讨论如何保护密码方面的具体内容。
我的疑问是:如果将数据库连接密码以明文形式存储是可以接受的,为什么对于如何使用户密码更加安全存在如此多的讨论和分歧呢?
为什么存储在数据库中的密码比保存连接密码的配置文件更容易受到攻击?难道攻击者不需要获取我的系统才能从我的数据库中获取用户密码吗?
在我的情况下,我正在使用PHP/MySQL运行在CentOS上,但这个问题也适用于其他环境。
总的来说,建议采取以下做法:
1.将数据库连接密码存储在文档根目录之上的一个单独的配置文件中。该文件不受版本控制,并受到文件系统权限的保护。
2.使用已证实的安全哈希算法对用户密码进行哈希处理,并使用对每个密码都唯一的盐进行处理。
我不想再次讨论已经被问过和回答过的那些问题,所以我不想详细讨论如何保护密码方面的具体内容。
我的疑问是:如果将数据库连接密码以明文形式存储是可以接受的,为什么对于如何使用户密码更加安全存在如此多的讨论和分歧呢?
为什么存储在数据库中的密码比保存连接密码的配置文件更容易受到攻击?难道攻击者不需要获取我的系统才能从我的数据库中获取用户密码吗?
在我的情况下,我正在使用PHP/MySQL运行在CentOS上,但这个问题也适用于其他环境。