源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

PHP Token(令牌)设计

  • 时间:2022-05-21 22:15 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:PHP Token(令牌)设计
如何达到目的: 怎样避免重复提交? 在SESSION里要存一个数组,这个数组存放以经成功提交的token.在后台处理时,先判断这个token是否在这个数组里,如果存在,说明是重复提交.  如何检查来路? 可选项,这个token在生成的时候,加入了当前的session_id.如果别人copy你的html(token一迸copy),在提交时,理论上token里包含的session_id不等于当前session_id,就可以判断这次提交是外部提交.  如何匹配要执行的动作? 在token的时候,要把这个token的动作名称写进这个token里,这样,在处理的时候,把这个动作解出来进行比较就行了. 我以前写的GToken不能达到上面所说的第二条,今天修改了一下,把功能2加上了.个人感觉还行. 请大家看代码,感觉哪里有不合理的地方,还请赐教!谢谢. 加密我是找的网上的一个方法,稍作了一下修改. GEncrypt.inc.php:
[url=http://www.1sucai.cn/article/<BR><?php %20<BR>include(]下载此文件[/url]这一切看着似乎是没有问题了. 如果想判断是否是执行的匹配动作,可以把isToken里的formName改一下,运行,很好,没有匹配上.证明这个成功. 是否能避免重复提交,我没有验证,太简单的逻辑了. 余下的就是判断 来路检查 是否正常工作了. 把上面的示例产生的html copy到本地的一个网页内(以达到不同的域的目的),运行,检查来路不明,没有执行动作(需要把isToken的第三个参数设为true). 把isToken的第三个参数设置为false,提交,指定的动作执行了! 好了,到此为止,不知道哪个地方是否还存在BUG,这就要在长期运用中慢慢调试修改了!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部