当前位置:首页 » 编程语言 » casphp

casphp

发布时间: 2023-01-26 06:24:52

1. 如何配置CAS php 单点登录求详简。。。

你可以试试这个方法:你得用redirect来保证cookie被存到浏览器,不过我觉得你也可以用javascript发送http请求来保证cookie
被记录在第二个domain下面。
What
we
have
implemented
on
a
few
sites
that
use
a
single
sign
on
is
a
round
trip
login
process.
The
user
authenticates
on
the
first
domain,
we
encrypt
the
login
details,
and
redirect
them
to
a
known
page
on
the
second
domain,
log
them
in
there,
and
then
redirect
back
to
the
original
server.
This
client
side
redirection
is
important
-
cookies
are
only
written
when
there
is
a
response
back
to
the
client,
and
the
browser
has
to
visit
the
second
domain
to
actually
see
the
cookies.

2. phpcas登录遇到的问题

使用apereo/phpcas包完成单点登录,某一次项目中,本地测试没有问题发布线上之后cas登录页出现Error Internal script failure。

看到Error Internal script failure这个错误,完全不知道问题出在哪里,各种搜索没有找到答案,无奈进入源码。看到一个log方法,好像是用来记日志的,判断的filename存在就记录日志,继续找到看到了setDebug,在setDebug中去设置了日志文件目录之后就可以记录日志了通过日志看具体问题。

终于在日志里看出了问题在写入session时文件没有写入权限导致cas登录失败

3. php cas客户端session不同步问题怎么解决

如果使用phpcase等cas系统提供的客户端sdk,他帮我们自动做好了session的处理:cas中心验证用户凭证后,会把用户信息传递给子系统,子系统的客户端sdk会把cas中心传回来的用户信息保存到session中(默认是保存user),并且在返回浏览器时将sessionid写到cookie中
可以在子系统登录后,打印出sessionid和内容
var_mp(session_id());
var_mp("<br/>");
var_mp($_SESSION);
比对浏览器cookie中的sessionid,可以看到cookie和session中的sessionid是一致的,并且session中有了user这个属性,就是用户登录时填写的字段

4. 如何配置使用CAS的PHP客户端

整个配置过程我划分成四步骤:
1、准备CAS的PHP库和相关库文件
1)到CAS的网站下载文件phpcas-0.60-rc7.zip
2) 由于其用到了PEAR的DB库,需要到PEAR网站去下载。
下载文件PEAR-1.7.1.tgz和DB-1.7.13.tgz 也可在google上搜索。
当然不一定是我说的版本,但我给的是我试验成功的版本。
3) 用于使用到了SSL所以需要下载openssl。当然我是在windows环境下试验的,下载的是
其的windows版本。
4)安装openssl。
2、配置PHP环境
1)将phpcas-0.60-rc7.zip解压,我们选在了PHP环境的include目录。在其下建立cas将文件解压进去。
2)同理将PEAR-1.7.1.tgz和DB-1.7.13.tgz解压,也分别建立pear和db两个目录。
3)修改php环境的ini文件,一般是php.ini文件。将我们前两步骤建立的目录加入到include_path中。根据安装环境修改对应的unix或windows项。
4)由于phpcas用到了CURL(用于连接ssl)和DOMXML(用于处理CAS服务器返回的消息)两个组件,因此需要保证php解释环境需要有这两个扩展。需要做的就是修改ini文件将extentions节下的屏蔽符号去掉,然后就是检查PHP环境的extentions目录下是否有对应的.dll或.o文件。一般标准安装都会有。
3、测试CAS的php客户端
1)前面做完后,应该比较激动了,很想看看php程序到底能不能访问CAS呢。
2)在phpcas-0.60-rc7.zip中的docs/examples中有几个测试程序。当然我们先前解压的目录下也有。
3)我们只是看一下通了没有,因此拷贝example_simple.php文件到apache的htdocs下。具体根据你的web服务器配置。总之目的就是能通过浏览器访问example_simple.php。在用之前需要修改
example_simple.php文件,主要是要修改里面关于CAS服务器配置信息,修改代码中的phpCAS::client(...)这一句。整个方法意义如下:
phpCAS::client(CAS_VERSION_2_0,'服务地址',端口号,'cas的访问地址');
将自己的服务地址和端口号和cas的相对服务地址的url填如就可以了,例如:phpCAS::client(CAS_VERSION_2_0,'localhost',8443,'cas');表示可以通过localhost:8443/cas访问到CAS服务。
4)在浏览器里试验一下吧,没有意外的话会看到CAS的登录界面。这就表示配通了。
4、根据项目需要修改对应的PHP代码,加入对CAS的调用,将用户登录交给CAS我们只需处理对应的用户,在PHP程序中的权限问题了。对于旧有就有的PHP代码只需要用访问CAS服务换掉验证用户身份部分就可以了。
调用CAS关键性代码:
include_once('CAS.php');
//可以不用,用于调试,可以通过服务端的cas.log看到验证过程。
phpCAS::setDebug();
// 初始化phpcas
p hpCAS::client(CAS_VERSION_2_0,'服务地址',端口号,'cas的访问地址');
例如:phpCAS::client(CAS_VERSION_2_0,'localhost',8443,'cas');
// 不使用SSL服务校验
phpCAS::setNoCasServerValidation();
// 访问CAS的验证
phpCAS::forceAuthentication();
这时候就验证完毕了
获得用户名可以通过phpCAS::getUser()
//登出
if (isset($_REQUEST['logout'])) {
phpCAS::logout();
}
当然CAS除了它默认的登录界面和校验逻辑,还是允许自行定义的。
如何自定义登录界面,后续在谈。
转载仅供参考,版权属于原作者。祝你愉快,满意请采纳哦

5. php cas单点登录如何获取用户信息而不跳转到登录页

asjx 获取cookies 即可

6. 如何配置使用CAS的PHP客户端

1)下载CAS php客户端。我下载的是CAS-1.3.3版本
2)文件结构,如图:

3)在php项目根目录下面创建cas文件夹。拷贝CAS文件夹,CAS.php,docs文件夹下的examples下面的文件 至php项目cas文件夹中。
4)修改CAS.php文件example_html.php文件
修改phpCAS::client(CAS_VERSION_2_0, $cas_host, $cas_port, $cas_context);为
phpCAS::client(CAS_VERSION_2_0, '127.0.0.1', 8443, 'cas');
以上步骤,可完成php的cas配置。但是根据具体项目,需要稍作修改。

热点内容
锐界七座买哪个配置好 发布:2025-07-01 14:14:59 浏览:980
svn下载linux 发布:2025-07-01 14:10:38 浏览:732
苹果手机打游戏和安卓哪个流畅 发布:2025-07-01 13:58:41 浏览:840
中原证券服务器怎么样 发布:2025-07-01 13:57:23 浏览:998
在简便算法 发布:2025-07-01 13:32:06 浏览:766
c语言表达式绝对值 发布:2025-07-01 13:25:45 浏览:491
获取网站访问量 发布:2025-07-01 13:20:28 浏览:296
平行线算法 发布:2025-07-01 13:10:13 浏览:603
c语言不可嵌套的是 发布:2025-07-01 13:04:33 浏览:330
三星手机老是显示存储空间不足 发布:2025-07-01 13:00:09 浏览:595