CAS 单点登陆配置

准备工作
1、认证中心机器。地址192.168.0.177 域名 aa.cn
2、需要做认证的服务器 地址 192.168.0.105 域名 bb.cn
修改 177 和105 机器的hosts (system32 搜索一下)
177机器
修改:hosts
192.168.0.177   aa.cn
192.168.0.105   bb.cn
105机器
修改:hosts
192.168.0.177   aa.cn
192.168.0.105   bb.cn
下载 cas
本例使用的是
cas-server-3.0.5.zip
cas-client-java-2.1.1.zip
ssl 认证服务器 tocat5.5
客户端resin-2.0.3
 
认证中心修改与配置
机器177
1、生成keystore 文件
命令行模式下:
keytool -genkey -alias tomcat -validity 365 -keyalg RSA -keystore D:\tomcat.keystore 
问姓名时输入:
aa.cn
密码infosea
2、配置tomcat5 的ssl 端口:
conf\server.conf
 
<connector port="8443" maxhttpheadersize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreFile="d:/tomcat.keystore" keystorePass="infosea" />
访问 localhost:8443 可以访问,说明tomcat5 ssl 配置成功。
3、cas 配置
将cas.war 包拷到tomcat 的webapps 下,访问 https://192.168.0.177:8443/cas/login 能正常访问,说明cas 可以正常运行。
配置 jdbc  sql 语句认证方式。
cas/web-inf/deployerConfigContext.xml
注意 
bean
casDataSource
myjdbcauth
authenticationHandlers 的list 参数。
如果认证需要指定加密类的话,参考其它资料。本例只让cas 简单的运行起来。
<bean id="authenticationManager"
  class="org.jasig.cas.authentication.AuthenticationManagerImpl">

   
     
    <bean
     class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler" />
     
    <bean
     class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" />
    
   
  


oracle.jdbc.OracleDriver 


jdbc:oracle:thin:@192.168.0.56:1521:glis 


usrglis 


usrglis 



<property name="sql"
value="select mm as password from dzxxb where upper(dztm) = upper(?)" /> 

cas 可以根据 cas/WEB-INF/cas-servlet.xml 里的viewResolver 配置装载不同的ui配置文件.
将 cas\WEB-INF\view\jsp 里的sample 拷贝并改名为 newUI
修改里面的文件(文件名的意思很明显)
修改cas-servlet.xml
<bean
  id="viewResolver"
  class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
  <property
   name="basename"
   value="newUI_views" />
  <property
   name="order"
   value="0" />
 
 
新建
newUI_views.properties
### Login view (/login)
casLoginView.(class)=org.springframework.web.servlet.view.JstlView
casLoginView.url=/WEB-INF/view/jsp/newUI/ui/casLoginView.jsp
### Login confirmation view (logged in, warn=true)
casLoginConfirmView.(class)=org.springframework.web.servlet.view.JstlView
casLoginConfirmView.url=/WEB-INF/view/jsp/newUI/ui/casConfirmView.jsp
### Logged-in view (logged in, no service provided)
casLoginGenericSuccessView.(class)=org.springframework.web.servlet.view.JstlView
casLoginGenericSuccessView.url=/WEB-INF/view/jsp/newUI/ui/casGenericSuccess.jsp
### Logout view (/logout)
casLogoutView.(class)=org.springframework.web.servlet.view.JstlView
casLogoutView.url=/WEB-INF/view/jsp/newUI/ui/casLogoutView.jsp
### 1.0 validation responses (/validate)
cas1ServiceFailureView.(class)=org.jasig.cas.web.view.Cas10ResponseView
cas1ServiceFailureView.successResponse=false
cas1ServiceSuccessView.(class)=org.jasig.cas.web.view.Cas10ResponseView
cas1ServiceSuccessView.successResponse=true
casServiceSuccessView.(class)=org.springframework.web.servlet.view.JstlView
casServiceSuccessView.url=/WEB-INF/view/jsp/default/protocol/2.0/casServiceValidationSuccess.jsp
casServiceFailureView.(class)=org.springframework.web.servlet.view.JstlView
casServiceFailureView.url=/WEB-INF/view/jsp/default/protocol/2.0/casServiceValidationFailure.jsp
casProxyFailureView.(class)=org.springframework.web.servlet.view.JstlView
casProxyFailureView.url=/WEB-INF/view/jsp/default/protocol/2.0/casProxyFailureView.jsp
casProxySuccessView.(class)=org.springframework.web.servlet.view.JstlView
casProxySuccessView.url=/WEB-INF/view/jsp/default/protocol/2.0/casProxySuccessView.jsp
### CAS error view
serviceErrorView.(class)=org.springframework.web.servlet.view.JstlView
serviceErrorView.url=/WEB-INF/view/jsp/newUI/ui/serviceErrorView.jsp
重启动tomcat ,应该可以看到新的登录页面了。

客户端配置

1、导出证书
keytool -export -file myserver.cert -alias tomcat -keystore d:\tomcat.keystore
 
2、客启端导入证书
keytool -import -alias tomcat -file myserver.cert -keystore "C:\Program File
s\Java\jdk1.5.0_09\jre\lib\security\cacerts"
 
将casclient.jar拷贝到应用的WEB-INF\lib 下
修改你的应用的web.xml添加filter
  
  casfilter 
   edu.yale.its.tp.cas.client.filter.CASFilter
    
      edu.yale.its.tp.cas.client.filter.loginUrl
      https://aa.cn:8443/cas/login 
   
    
      edu.yale.its.tp.cas.client.filter.validateUrl
      https://aa.cn:8443/cas/serviceValidate  
  
     
    edu.yale.its.tp.cas.client.filter.serverName    
  bb.cn:8089
    
 
  
  casfilter    
 /*
  
访问网站时就会弹出提示登陆窗了.
登陆后的用户可以从 session 中的到登陆用户的登陆代码
 
session.getAttribute("edu.yale.its.tp.cas.client.filter.user")
 
当然还有很多方式验证方式. 可以参考cas 说明.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值