CAS插件2.0 1.2
第三方这个插件,主要是为了让禅道支持 cas 登录 支持php8.0,原则上向下兼容。如果不兼容,请修改extension/custom/cas里的代码
这个插件,主要是为了让禅道支持 cas 登录 支持php8.0,原则上向下兼容。如果不兼容,请修改extension/custom/cas里的代码 CAS插件 插件作用:让禅道支持 CAS 登录 测试版本:17.8 其他说明:安装完成后,会在原 登录 按钮 左侧,生成 单点登录 按钮,安装的时候,参考一下 安装文档,我已经尽量把文档写清楚了,插件里的一些代码,直接引用了,Github 上 zhoujunhe 的钉钉扫码代码,感谢他的开源代码。 重要说明: 详细看 安装文档! 详细看 安装文档! 详细看 安装文档! 404的问题也在安装文档里有说明。 如果我有描述不清楚,或者代码错误的,麻烦邮件提醒我一下,我会及时更新修改。 登出改造 /opt/zbox/app/zentao/module/user/control.php中 logout函数里 public function logout($referer = 0) { if(isset($this->app->user->id)) $this->loadModel('action')->create('user', $this->app->user->id, 'logout'); session_destroy(); setcookie('za', false); setcookie('zp', false); if($this->app->getViewType() == 'json') die(json_encode(array('status' => 'success'))); $vars = !empty($referer) ? "referer=$referer" : ''; $this->locate($this->createLink('user', 'login', $vars)); } 注释掉 注释掉$this->locate($this->createLink('user', 'login', $vars)); 增加 header('location:https://cas.aaaa.com:8443/cas/logout?service=http%3A%2F%2Fzentao.aaaa.com%2Fzentao%2F'); 特别说明: 1、默认创建的用户所在组为『其他』,登录后可能提示没有权限,请使用管理员在『组织』-『权限』中对新建的用户进行权限设置 2、token回调中,地址的拼接默认为:$config->requestType = 'PATH_INFO'; 一、插件安装 安装方法1: 源码安装 下载插件 将解压插件到本地 将下面两个目录,复制到禅道的根目录 config module 安装方法2: 插件安装 下载插件 登录管理员账号,后台->插件->本地安装->选择zip包-> 安装 二、CAS服务器配置 增加下面几个属性,CAS返回时key值要跟下面一样,如果没有办法修改 CAS返回的key值,就到 extension/custom/cas/control.php 进进行修改映射。 name 用户的名称,就是真实姓名 email 用户的邮箱 mobile 用户的手机号 account 用户名,需要在禅道里生成的账号名。 三、插件配置 配置文件在 config/ext/cas.php $config->cas->loginUrl 修改为 cas 的登录url $config->cas->authUrl 修改为 cas token的认证路径 $config->cas->serviceUrl 禅道应用的 token 回调地址,如果禅道在网站根路径上,只需要修改域名,否则修改成禅道URL根路径。 如果回调的时候,出现404,大概率是这里的地址配置错误,我在测试的禅道URL根路径是 http://xxxxx/ ,有的是. http://xxxx/zentao/,所以需要根据实际进行修改 |