如果有ecms整合phpCAS经验的小伙伴可以给我留言,有偿付费

需求是:ecms登录自动跳转到CAS认证(已完成),认证后直接跳转到帝国cms系统中,并保持帝国cms系统权限等都和以前一样

正常使用

ecms是很多建站的开源cms选择之一,最近甲方提出一个额外需求是对接CAS框架实现SSO(单点登录)

关于单点登录原理,下面这篇博文是我见过,介绍的比较细致

单点登录原理分析

当下我的进度是完成了

1.tomcat(jdk8)配置好了认证证书(能开启https服务,版本是cas-server-4.0.0-release)

2.配置好了php客户端(版本是CAS-1.3.5)

3.配置实现了phpcas认证方式从默认(默认用户名casuser,密码Mellon)到项目所需mysql的验证

在3步骤在参考众多博文挑选的以下三篇

1.配置证书,开启https => 搭建单点登录服务器

2.配置开启php客户端=>搭建1.3.5casphp客户端

3.phpcas连接Mysql=>cas-4.0.0-server 配置mysql数据库查询认证

可以看到在网站根目录下有phpproj1和phpproj2两个项目

当点击任何一个项目的页面时,如果发现没有登录,会自动跳转到认证中心去请求登录,此时session目录下(php/tmp)生成一个由认证中心生成的session,当然此时是0k 也就是生成了一个空session文件

配置完phpcas数据库认证,当输入用户名和密码成功后,认证中心会生成ticket并把ticket返回到当前页面,同时记录session。此时利用phpcas官网介绍的demo中调用

phpCAS::getUser()

从ticket中获取登录用户名

但是现在的根本问题是,ecms有一套自己生成session的机制,和之前的对比可以看出

ecms的session文件内容是——

目前我也是卡在这个地方

由于CAS认证中心有一套自己生成session机制,ecms自身也有一套生成session的机制,解决这个问题 个人觉得应该有两个解决思路

一 实现session共享

或者

二 修改ecms中session和cookie(是cookie和session共同验证)整合进CAS[但实现这点并不简单,因为ecms是cookie+session共同验证]

最后要实现的功能:ecms登录自动跳转到CAS认证(已完成),认证后直接跳转到帝国cms系统中,并保持帝国cms系统权限等都和以前一样

phpcas 整合 ecms的问题的更多相关文章

  1. 打通多个帝国CMS系统的会员整合与同步教程

    例子:我们要整合下面三个帝国CMS系统网站名称分别为"A网站"."B网站"."C网站":安装系统的数据库名分别为"adb" ...

  2. CAS客户端整合(二) Zabbix

    Zabbix是一个强大的服务器/交换机监控应用,有zabbix-server, zabbix-client, zabbix-web 三部分.zabbix-web管理端是用php写的. 前文参考:CAS ...

  3. CAS客户端整合(一) Discuz!

    有好几个系统需要接入CAS,所以登录模块统统需要重构 版本 CAS服务端是Java的 Cas-server-4.0 CAS的php客户端 是 phpCAS-1.2.0 论坛版本是 Discuz!X3. ...

  4. CAS客户端整合(四)-- Cacti

    Cacti 是一套纯 lnmp 搭建的服务器监控系统,用 SNMP 抓取数据,RRDTool 绘制表格 登录流程 Cacti 的登录同样是先判断session,再尝试从 cookie 读取 sessi ...

  5. [原创]mybatis中整合ehcache缓存框架的使用

    mybatis整合ehcache缓存框架的使用 mybaits的二级缓存是mapper范围级别,除了在SqlMapConfig.xml设置二级缓存的总开关,还要在具体的mapper.xml中开启二级缓 ...

  6. kindeditor4整合SyntaxHighlighter,让代码亮起来

    这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代码高亮,因为SyntaxHighlighter的应用非常广泛,所以将kindeditor默认的prettify替换 ...

  7. spring源码分析之freemarker整合

    FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页.电子邮件.配置文件.源代码等)的通用工具. 它不是面向最终用户的,而是一个Java类库,是一款程 ...

  8. FullCalendar应用——整合农历节气和节日

    FullCalendar用来做日程管理功能非常强大,但是唯一不足的地方是没有将中国农历历法加进去,今天我将结合实例和大家分享如何将中国农历中的节气和节日整合到FullCalendar中,从而增强其实用 ...

  9. SAP CRM 将组件整合至导航栏中

    到现在,我们已经可以让组件独立地显示.我们只是运行它.让它显示在Web UI中.让我们把组件整合进导航栏,使我们可以在正常登录Web UI时访问它. 步骤一: 为你的UI组件主窗体创建一个内向插件. ...

随机推荐

  1. Leetcode 647. Palindromic Substrings

    Given a string, your task is to count how many palindromic substrings in this string. The substrings ...

  2. Eclipse svn 中文转成英文

  3. Spring配置Quartz任务调度、及 ThreadPool 线程池

    ONE.除了引入 Spring 相关的 jar 包,还要引入 Quartz 的 jar 包 <dependency> <groupId>org.springframework& ...

  4. kubernetes continually evict pod when node's inode exhausted

    kubernetes等容器技术可以将所有的业务进程运行在公共的资源池中,提高资源利用率,节约成本,但是为避免不同进程之间相互干扰,对底层docker, kubernetes的隔离性就有了更高的要求,k ...

  5. 利用OpenCV检测手掌(palm)和拳头(fist)

    思路:利用训练好的palm.xml和fist.xml文件,用OpenCV的CascadeClassifier对每一帧图像检测palm和fist,之后对多帧中检测到的palm和fist进行聚类分组,满足 ...

  6. Angular待办事项应用4——模拟web服务

    内存服务器 angular提供了一个快速建立测试用的web服务方法,内存服务器(in-memory),让我们不用等待后端开发的进度 安装npm包 npm install --save angular- ...

  7. Open JDk 源码下载地址

    OpenJDK 和Oracle JDK 共用了大量相同的代码,在性能.功能和执行逻辑上都和Oracle JDK非常一致,由于 现在Oracle JDK是闭源的,我们可以下载Open JDK的源码来研究 ...

  8. [javaSE] 位运算符(&|^)

    位运算是直接对二进制进行计算 左移 << 右移 >> 先把整数换成四个8bit 0000-0000 0000-0000 0000-0000 0000-0000 这个二进制左右移 ...

  9. AngularJS之过滤器

    AnularJS的过滤器用来格式化需要展示给用户的数据,有很多实用的内置过滤器,也可以自己编写. 在HTML中的模板绑定符号{{ }}内通过|符号来调用过滤器.例如,假设我们希望将字符串转换成大写,可 ...

  10. HTML存储详解

    和大家一起先来了解一下H5之前的存储方式: cookies的诞生: http请求头上带着数据 大小只能为4K 主Domain的污染 下面是百度的一些Cookies HTTP中带√的表示,只能被服务器端 ...