Php 在emai中通过链接登录的最佳安全方式

Php 在emai中通过链接登录的最佳安全方式,php,security,email,web,authorization,Php,Security,Email,Web,Authorization,现在我有一个任务,使登录链接的电子邮件。我观察了其他网站是如何制作的,他们通常使用哈希来自动登录网站 在我们的网站上,我们有一个订单号和pin,用于登录以管理个人帐户 我的问题是:在电子邮件中不使用订单号和pin链接加法器登录是否有安全的原因?一般来说,在电子邮件中自动登录很少是个好主意。然而,如果你真的需要它,你应该确保 a) 链接只能使用一次(几次)和 b) 链接只能在有限的时间内使用 如果你使用一个散列或纯文本来说明自动登录功能并不重要——如果中间的人收到你的邮件,他可以登录。你想做什么?

现在我有一个任务,使登录链接的电子邮件。我观察了其他网站是如何制作的,他们通常使用哈希来自动登录网站

在我们的网站上,我们有一个订单号和pin,用于登录以管理个人帐户


我的问题是:在电子邮件中不使用订单号和pin链接加法器登录是否有安全的原因?

一般来说,在电子邮件中自动登录很少是个好主意。然而,如果你真的需要它,你应该确保 a) 链接只能使用一次(几次)和 b) 链接只能在有限的时间内使用


如果你使用一个散列或纯文本来说明自动登录功能并不重要——如果中间的人收到你的邮件,他可以登录。你想做什么?订单号和密码?您将保留哈希服务器端,以便pin和订单号在邮件中不直接可见?我建议使用salt进行加密,并将salt附加到邮件中的加密链接。

-任何人都可以阅读此信息,因此,根据您需要的系统安全程度,我从未见过通过电子邮件链接自动登录您的网站。注册后不要将电子邮件验证(即验证其真实电子邮件地址)与登录混淆。通过链接自动登录从来都不安全。如何阻止某人将电子邮件转发给其他人?现在每个人都可以访问此人的帐户,因为登录链接嵌入其中。我清楚地了解你吗?从安全角度来看,没有理由使用salt而不是订单号和pin?这取决于订单号和pin的敏感性。我不会把任何可能的敏感信息放在邮件链接中,我不明白你为什么要把它放在那里。换言之:您应该按照上面的a)和b)创建一个随机URL,在服务器端单击该URL后,将检索用户继续工作所需的所有信息(例如,创建新会话、检索订单号等)