浏览 6998 次
锁定老帖子 主题:ruby+cas实现sso
该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-07-03
之前做了几个基于ruby,java的系统,现在想把它们整合到一起,首先遇到了单点登录问题,开始是用跨域iframe来实现,效果还行,但安全性不大高,所以还是打算上cas,方案如下: 1 安装cas3.0并配置http://liuqiang.iteye.com/admin/blogs/210679,保证http://localhost:8080/cas能正常运行。
2 安装ruby的cas客户端:进入项目根目录,运行ruby script/plugin install http://rubycas-client.googlecode.com/svn/trunk/rubycas-client
3 打开config/environment.rb ,在该文件最后也就是等rails初始化完毕,加上 CASClient::Frameworks::Rails::Filter.configure(
4 在需要校验的控制器中加入 before_filter CASClient::Frameworks::Rails::Filter
5 在视图中加入登录链接:<a href="/front/sessions/login">登录</a>
6 在负责处理登录的控制器中加上 before_filter :set_current_url , CASClient::Frameworks::Rails::Filter before_filter :set_current_url ,CASClient::Frameworks::Rails::Filter def set_current_url #记下来源url,因为在之后的验证过程中,来源url会丢失 cookies[:current_url] = request.referer end def cas_login #跳到来源url redirect_to cookies[:current_url] end 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |