CAS服务端的部署及CAS与spring的整合

一 CAS服务端的部署

这里以4.0版本为例,cas-server-webapp-4.0.0.war  将其改名为cas.war放入tomcat目录下的webapps下。启动tomcat自动解压war包。

浏览器输入  http://localhost:8080/cas/login 可以看到登陆的页面 如下

CAS服务端的部署及CAS与spring的整合_第1张图片

这里有个固定的用户名和密码   casuser /Mellon

登录成功后会跳到登录成功的提示页面

CAS服务端的部署及CAS与spring的整合_第2张图片

A  修改端口

如果我们不希望用8080端口访问CAS, 可以修改端口

打开tomcat 目录 conf\server.xml  找到下面的配置

将端口8080,改为9100

B  修改CAS配置文件   

修改casWEB-INF/cas.properties

server.name=http://localhost:9100

C  去除https认证

CAS默认使用的是HTTPS协议,如果使用HTTPS协议需要SSL安全证书(需向特定的机构申请和购买) 。如果对安全要求不高或是在开发测试阶段,可使用HTTP协议。我们这里讲解通过修改配置,让CAS使用HTTP协议。

a  修改cas的WEB-INF/deployerConfigContext.xml

找到下面的配置

p:httpClient-ref="httpClient"/>

修改成p:requireSecure="false"requireSecure属性意思为是否需要安全验证 即;HTTPSfalse为不采用

b 修改cas的/WEB-INF/spring-configuration/ticketGrantingTicketCookieGenerator.xml

找到下面配置

      p:cookieSecure="true"

      p:cookieMaxAge="-1"

      p:cookieName="CASTGC"

      p:cookiePath="/cas" />

参数p:cookieSecure="true",同理为HTTPS验证相关,TRUE为采用HTTPS验证,FALSE为不采用https验证。参数p:cookieMaxAge="-1",是COOKIE的最大生命周期,-1为无生命周期,即只在当前打开的窗口有效,关闭或重新打开其它窗口,仍会要求验证。可以根据需要修改为大于0的数字,比如3600等,意思是在3600秒内,打开任意窗口,都不需要验证。我们这里将cookieSecure改为false ,  cookieMaxAge 改为3600

c  修改cas的WEB-INF/spring-configuration/warnCookieGenerator.xml

找到下面配置

p:cookieSecure="true"
p:cookieMaxAge="-1"
p:cookieName="CASPRIVACY"
p:cookiePath="/cas" />

我们这里将cookieSecure改为false ,  cookieMaxAge 改为3600

二 CAS与spring的整合

A 导入CAS与spring的jar包(这里我将与spring相关的jar包及版本全部上传)B
  


	4.0.0
	
		com.pinyougou
		pinyougou-parent
		0.0.10-SNAPSHOT
	
	pinyougou-user-web
	war
	用户注册的服务层

	
		
		
			org.springframework
			spring-context
		
		
			org.springframework
			spring-beans
		
		
			org.springframework
			spring-webmvc
		
		
			org.springframework
			spring-jdbc
		
		
			org.springframework
			spring-aspects
		
		
			org.springframework
			spring-jms
		
		
			org.springframework
			spring-context-support
		
		
			org.springframework
			spring-test
		
		
		
		
			com.alibaba
			dubbo
		
		
			org.apache.zookeeper
			zookeeper
		
		
			com.github.sgroschupf
			zkclient
		
		
			junit
			junit
		
		
			com.alibaba
			fastjson
		
		
			javassist
			javassist
		
		
			commons-codec
			commons-codec
		
		
			javax.servlet
			servlet-api
			provided
		

		
		
		
			org.springframework.security
			spring-security-web
		
		
			org.springframework.security
			spring-security-config
		
		
		
			org.springframework.security
			spring-security-cas
		
		
		
			org.jasig.cas.client
			cas-client-core
			
				
					org.slf4j
					log4j-over-slf4j
				
			
		


		
			com.pinyougou
			pinyougou-pojo
			0.0.10-SNAPSHOT
		
		
			com.pinyougou
			pinyougou-user-interface
			0.0.10-SNAPSHOT
		
		
			com.pinyougou
			pinyougou-common
			0.0.10-SNAPSHOT
		
	


	
		
			
				org.apache.tomcat.maven
				tomcat7-maven-plugin
				2.2
				
					
					9106
					
					/
				
			
		
	

B  导入配置文件web-xml


	   
		springSecurityFilterChain  		
		 org.springframework.web.filter.DelegatingFilterProxy  
	   
	   
		springSecurityFilterChain  
		/*  
	 

C 设置spring的配置文件springSecurity.xml


	
	
	
	
	
	
	

	
	
		
		
		
		
		
		  
	

	
	
	
		
		
		
	
	
		
		
	

	
	
		
	

	
	
		
		
	
	
	
	
	  
          
              
                  
              
          
          
        
          
              
                  
              
          
         
      
    
     
	  
	
	
	     
              
      
          
          
              
          
          
      
     

注意里面的引用ref- 

在配置文件中的相应登陆的实现类即可

CAS服务端的部署及CAS与spring的整合_第3张图片

三 退出登陆

设置退出登录后的跳转地址(这里只是自定义的地址也可以是http://www.baidu.com)

"requestSingleLogoutFilter" class="org.springframework.security.web.authentication.logout.LogoutFilter"

        "http://localhost:9100/cas/logout?service=http://localhost:9103"/> 

       ........ 

 

退出登录后,跳转到网站首页

<span class="safe"> <a href="/logout/cas">退出登录 a>span>

 

你可能感兴趣的:(CAS服务端的部署及CAS与spring的整合)