PHP集成cas

简介: 仅供参考

一、PhpWeb客户端配置

    首先php的配置文件中(php.ini)要支持extension=php_curl.dll。将提供的CAS-PHP解压(点此下载链接下载, 提取码:qwer),把里面的CAS文件夹和CAS.php拷贝到项目根目录。

二、新增Init.php文件

在项目根目录下新增Init.php。其内容为:

<?phpinclude_once"CAS/CAS.php";
phpCAS::setDebug();
//指定cas地址,第一个为cas版本,一般为CAS_VERSION_2_0//第二个参数为cas地址,第三个为cas的端口,第四个是cas的上下文phpCAS::client(CAS_VERSION_2_0,'cas.jnsjsxy.com',3193,'/cas',true);
//sso退出时,cas会请post应用带上logoutRequest参数,请求应用地址。//设置no ssl,即忽略证书检查。phpCAS::setNoCasServerValidation();
//phpCAS::handleLogoutRequests()可以响应sso退出请求,注销当前用户认证凭据。phpCAS::handleLogoutRequests();
phpCAS::forceAuthentication();
//$_REQUEST['logout'] 只是本应用退出参数。同时退出所有sso应用。//param可以指定 业务系统的service和url。可以参考cas官方说明。if(isset($_REQUEST['logout'])){
$param=array('service'=>'http://cas.jnsjsxy.com:3193/cas/');
phpCAS::logout($param);
exit;
}
?>

三、项目本身文件修改

找到项目的登录页,在登录页面顶部添加以下代码:

<?phprequire_once ("Init.php");
$username=phpCAS::getUser();
if ($username!=null){
session_start();
$_SESSION['username'] =$name;
//echo "<script> alert('{$username}') </script>"; }else{
跳转登录页}
?>

四、注意事项

如果要实现与cas的统一集成,需要各个业务系统与cas的身份做唯一标识,用此唯一标识进行约束,cas登录验证返回的也是该标识字段(当然可以包含多个消息报文)。

需要对原有业务系统的验证部分进行微调。

只需要判断是否能取到用户名即可。获取用户名的方式

$username = phpCAS::getUser();

此处得到的为cas与各系统之间约定的唯一标识。

目录
相关文章
|
1月前
|
存储 缓存 安全
如何使用 PHP 将天气跟踪集成到 Web 应用程序中
如何使用 PHP 将天气跟踪集成到 Web 应用程序中
32 0
|
5月前
|
XML Java 应用服务中间件
在Web Application中集成CAS登录模块
在Web Application中集成CAS登录模块
41 0
|
6月前
|
Apache
apache2.4集成php7或8均失败
apache2.4集成php7或8均失败
57 0
|
安全 Java Spring
77分布式电商项目 - CAS 客户端与 SpringSecurity 集成
77分布式电商项目 - CAS 客户端与 SpringSecurity 集成
69 0
|
PHP Apache Windows
工银e生活开发脱坑日志(5)wampServer集成环境配置php ts版php_infosec.dll文件
工银e生活开发脱坑日志(5)wampServer集成环境配置php ts版php_infosec.dll文件
157 0
|
前端开发 Java
SpringBoot 集成cas5.3 实现客户端接入cas认证中心
前面我们讲解了很多关于cas认证中心的内容,今天我们说一说如何接入客户端
912 0
Jasny SSO是如何与PHP框架集成的?
Jasny SSO是如何与PHP框架集成的?
237 0
|
BI API 数据安全/隐私保护
CAS与quickbi集成
cas是一款优秀的单点登录框架,quickbi也有自己的单点登录,当两个产品要进行整合使用一个单点登录,需要怎么改造呢?今天我们就来探讨下。cas使用的是5.2.6版本,quickbi使用的是4.1版本。
CAS与quickbi集成
.NetWeb集成cas
仅供参考
778 0