在服务器端代码对密码进行散列并存储到数据库中之前,在注册时通过电子邮件向用户发送密码是不是一个可怕的想法?
如果是用户输入的,是的,这是个坏主意。电子邮件是未加密的,在您的邮件服务器和他们的邮件服务器之间的传输过程中可以被拦截,并且有可能被访问这两个服务器的人读取。
如果是一次性临时密码,风险较小,因为他们应该在不久后更改。
我会通过电子邮件给他们一个临时密码,然后要求他们在第一次登录时更改。假设有人可以在用户有机会之前更改它。
部分答案取决于你认为你的凭据需要有多安全。如果你是一家银行或任何其他处理PII的网站,那么这绝对是一个糟糕的主意。但是,如果你认为破解你的网站没有真正的回报,那么你可以自行决定。从安全角度来看,这绝对不是一个好主意,但如果有预算或遗留代码等组织因素可能会让你陷入困境,那么你可以考虑
此外,我完全同意其他回答的人的建议,如果用户选择了密码,就不要向他们发送密码。这是一个不必要的潜在安全漏洞!
最好不要这样做,因为如果用户指定了不正确的电子邮件地址,其他人可以使用他们的信息登录。
此外,如果您至少一次没有使用注册时使用的密码登录,您可以通过不允许重置密码来提高安全性。
我的看法是这样的。
选项1-如果用户选择了密码,则不要邮寄。
选项2-如果您生成一个密码,发送给用户,有一个链接激活他的帐户并更改密码。
取决于用户注册的内容,每个选项都可以使用。