84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
Ist es sicher, die Verifizierung in der Sitzung zu speichern, wenn eine SMS-Verifizierung in PHP durchgeführt wird?
温故而知新,可以为师矣。 博客:www.ouyangke.com
数据库。 短信验证码要考虑几个约束:1.多少秒之内同一个手机号不得再接收短信2.同一个ip一个时间段里不能调用多少次,为了安全,或许你还需要加上一天之内短信不能超过多少条。 所以这些约束的实现用数据库比较好。session肯定不行。备注: 加上图形验证码,不然接口容易遭受攻击哦。
建议在cache 里面 比如 redis memcached 都可以.cache 的性能比DB要的多
安全,因为session在服务器上,客户端看不到,至于session的存储方式,可以默认文件session,可以session入库,还可以用内存来存,比如上面有人说的redis memcache等,也可以在linux下用自己写的缓存,都行,效率和成本只能有一个,用缓存成本高,用数据库效率低
但是实际上,现在很少有公司自己搞这个,都用第三方,流量低的网站第三方划算,流量高的网站,你还缺这点钱?
安全是相对的,你如果能保证cookie被篡改服务器能发现就是安全的,这一点可以通过动态签名来实现,动态签名可以是value、key、time的hash,之后服务器再对动态签名进行验证。不过一般这个业务场景用redis等缓存来实现比较方便,不推荐用session,session的超时事件没有缓存好控制。
数据库。 短信验证码要考虑几个约束:1.多少秒之内同一个手机号不得再接收短信2.同一个ip一个时间段里不能调用多少次,为了安全,或许你还需要加上一天之内短信不能超过多少条。 所以这些约束的实现用数据库比较好。session肯定不行。备注: 加上图形验证码,不然接口容易遭受攻击哦。
建议在cache 里面 比如 redis memcached 都可以.
cache 的性能比DB要的多
安全,因为session在服务器上,客户端看不到,至于session的存储方式,可以默认文件session,可以session入库,还可以用内存来存,比如上面有人说的redis memcache等,也可以在linux下用自己写的缓存,都行,效率和成本只能有一个,用缓存成本高,用数据库效率低
但是实际上,现在很少有公司自己搞这个,都用第三方,流量低的网站第三方划算,流量高的网站,你还缺这点钱?
安全是相对的,你如果能保证cookie被篡改服务器能发现就是安全的,这一点可以通过动态签名来实现,动态签名可以是value、key、time的hash,之后服务器再对动态签名进行验证。不过一般这个业务场景用redis等缓存来实现比较方便,不推荐用session,session的超时事件没有缓存好控制。