位置: 编程技术 - 正文

详解cookie验证的php应用的一种SSO解决办法(cookie验证和token验证的区别)

编辑:rootadmin

推荐整理分享详解cookie验证的php应用的一种SSO解决办法(cookie验证和token验证的区别),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cookie验证失败如何解决,通过cookie验证后不需要重新提交表单,cookie验证失败是什么意思,cookie验证失败如何解决,cookie检验,cookie检验,cookie认证,cookie验证用户登录,内容如对您有帮助,希望把文章链接给更多的朋友!

详解cookie验证的php应用的一种SSO解决办法

近日,项目中需要接入一个“年久失修”的PHP应用,由于系统已经建设多年,并且是信息中心自己的人通过某些工具弄出来的,而且是本人未真正接触过的PHP写的,而且跟我们的系统不在同一服务器上也就是存在跨域的问题,想通过客户端模拟登录的方式来实现,但是总是不成功。

没办法,只好想尽一切办法查看页面源代码,然后,找服务器的php文件,分析。

由于对php不熟悉,加上没有仔细看,因此,对于找到的登录页面的php文件,一开始只是有一个初步的了解,基本上确定是通过cookie来实现,实际上真正的验证机制还有如何验证都没有了解清楚,急着就开始新的征程,结果屡试屡败。先说一下一开始的实现方式:

最开始

系统中添加一个iframe,试图从本地应用中给iframe中的远程系统的指定页面的用户名、密码赋值,并模拟“登录”按钮的单击事件。这个是必定失败的,因为,跨域了,js一般不能跨域远程操作别人的东西。

然后

详解cookie验证的php应用的一种SSO解决办法(cookie验证和token验证的区别)

本地form的远程action。在本地的页面中新增一个form,此form中添加上与目标系统一样的登录界面的内容(就是用户名、密码输入框,特别说明的是此应用尚没有验证码),然后在页面加载时,便给form中的元素赋值,点击本地页面的“单点登录”时,提交此form,试图按照java登录验证的模式来实现此php系统的登录验证。但是,依然,无法正常登录。

接下来

仔细分析登录的php文件。发现验证过程其实是通过cookie来实现的,依稀记得早期的很多BBS都是这种方式。找相关人员通过各种途径,大体了解了登录验证的机制及过程,原来是在登录之后,将信息写入cookie,每个页面都会引入一个通过读取cookie并根据cookie的内容进行判断的php文件。这样了解了验证机制。于是,想要通过跨域写cookie的方式来实现,由于本身的应用是portal应用,因此,写跨域应用也费了一些劲,最终,写本地cookie没问题,但是跨域的cookie,连想都不用想,生成不了。

最后

分析php的登录界面,发现之所以每次定向的登录php文件,在进行验证的时候,都有一个if(isset($submit) and $submit=="登录")这样的判断,不是特别明白这句是什么意思,isset貌似是判断参数是否为空,而后面则判断参数值为“登录”!由于本人php水平太低,不知道这样的判断有何作用,是否能够执行。最终,只能跟客户讨论是否可以通过在服务端新增一个专门用于接收单点登录需要的php文件。只是把原来的登录用的php文件做了修改,去掉这些判断,并且原来的登录在验证之后,跳转到的目标页面是通过从地址栏获取的信息来进行跳转的,因此,对此部分内容也进行了调增。这样,最终形成了以下的ssologon.php文件

然后,把本地应用中的form的action指定为此php文件,搞定!

总结,对于需要分析别人的东西才能搞定的事情,一定不能过于焦躁,要仔细,了解原理,才能事半功倍。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

php+ajax实现仿百度查询下拉内容功能示例 本文实例讲述了php+ajax实现仿百度查询下拉内容功能。分享给大家供大家参考,具体如下:运行效果如下:html代码:!DOCTYPEhtmlhtmllang="en"headmetacharset="UTF-8

PHP高效获取远程图片尺寸和大小的实现方法 PHP高效获取远程图片尺寸和大小的实现方法在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正。写出这篇目的,

PHP实现实时生成并下载超大数据量的EXCEL文件详解 前言最近在工作中接到一个需求,通过选择的时间段导出对应的用户访问日志到excel中,由于用户量较大,经常会有导出万加数据的情况。而常用的PHPe

标签: cookie验证和token验证的区别

本文链接地址:https://www.jiuchutong.com/biancheng/284201.html 转载请保留说明!

上一篇:PHP简单实现二维数组赋值与遍历功能示例(php生成二维码)

下一篇:php+ajax实现仿百度查询下拉内容功能示例(php ajax 实现)

  • 金蝶结转销售成本
  • 保险费计入什么会计科目需要发票吗
  • 市场营销策划开题报告
  • 招聘服务合同印花税
  • 跨月的增值税普通发票开错了怎么办
  • 小规模纳税人核算方式选什么
  • 增值税逾期未申报网上可以吗
  • 购买商标权发生损失能税前扣除吗?
  • 行政事业单位长期挂账属于什么财务问题
  • 公司收到股东的投资款以后怎么处理
  • 增值税发票没有地址和开户行有效吗
  • 预交增值税怎么入账
  • 企业所得税季报和年报的区别
  • 分公司有法律效力吗
  • 三方扣款fd6
  • 印刷制作费税收编码是啥
  • 对公提回款是什么意思
  • 保税区内企业出口
  • 高新技术企业认定管理办法
  • 湖北个体户网上申报
  • 外贸公司是做什么的 经营范围是什么
  • 工程预算费用会计怎么做
  • 股权转让要交哪些费用
  • 事业单位在建工程转固定资产的账务处理
  • 车辆哪些费用计税
  • 企业预缴电费会退回吗
  • php b/s
  • 有形动产增值税税率是多少
  • 稀有品种茅膏菜
  • 发票章盖的不清楚可以在旁边再盖一个吗
  • 会计分录由什么要素组成
  • 用盈余公积弥补以前年度亏损
  • 审核过程中发现的问题应由被审核部门实施纠正
  • php实现图片上传显示
  • 出口退税的期限是多长
  • 浏览器无痕浏览后警察能查到吗
  • 在高地陶恩山脉的滑雪旅行,奥地利巴德加斯坦 (© RooM the Agency/Alamy)
  • 关于php中一些字符的数据
  • ctf web题型
  • thinkphp extend
  • nginx gui
  • vue父子组件传值
  • 帝国cms功能
  • 开公司车出差违章了谁负责
  • 印花税减半征收减免性质代码
  • 增值税发票查验结果不一致是什么意思
  • 运输发票计算抵扣怎么报税
  • 租车出差差旅费标准
  • 施工企业的内部往来
  • 发票第一联需要盖发票专用章吗
  • 测绘费 土地增值税
  • 企业年度报告填报时间
  • 劳保用品专卖
  • 什么叫总分类账簿
  • 无法收回的应收账款怎么做分录
  • 无形资产摊销如何操作
  • 购进固定资产没有发票怎么入账
  • 收到对方的银行承兑汇票
  • 劳务费属于哪个会计科目
  • 会计年初如何轻松工作
  • MySQL PXC构建一个新节点只需IST传输的方法(推荐)
  • linux修改yum
  • 电脑win7怎么样
  • win8.1技巧
  • window8所有程序在哪
  • win10更新后出现windows.old
  • pascl32.exe - pascl32是什么进程 有什么用
  • 在linux系统中创建文件的命令
  • 计算机图形学是什么专业
  • 如何正确使用农药芸苔素
  • iframe语法
  • android保存文件到本地
  • js实现@功能
  • 高通 trinket
  • 详解中国女足出线形势
  • 电子税务局 安徽
  • 单张发票开票限额?
  • 公积金取出后显示未到账
  • 河北航天信息技术有限公司官网
  • 定额发票怎么入账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设