CAS登録モジュールを使ってデータベースに接続し、ユーザーの合法性を検証する.

6257 ワード

CAS登録モジュールを使ってアプリケーションデータベースに接続し、ユーザーの合法性を検証する.
 CAS登録モジュールを開発のWebアプリに統合する方法についてはこちらをご覧ください.
http://blog.csdn.net/jia20003/article/details/49683827
 cas server 3.5.バージョン構成に基づいて実現します.
ここでは、既存のユーザーデータテーブルuser_をどのように利用するかについて説明します.テーブルの中のusernameとpasswordの2つのフィールドは、ユーザーがCASモジュールから登録する時に私達のアプリケーションデータベースbaic webの中のuser_を照会することを実現します.テーブル.ユーザー名とパスワードを検証して、本当にユーザーの合法性検査を実現します.
 
大体のステップは以下のような構成を実現する必要があります.まずcas serverのwarパッケージを開けてWEB-INFディレクトリの下でdeployer ConfigContect.xmlというファイルを見つけて、開けて見つけます.
<bean class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" />
<bean id="SearchModeSearchDatabaseAuthenticationHandler"
	  class="org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHandler"
	  abstract="false" lazy-init="default" autowire="default" >
  <property  name="tableUsers">
   <value>user_table</value>
  </property>
  <property name="fieldUser">
   <value>username</value>
  </property>
  <property name="fieldPassword">
   <value>password</value>
  </property>
  <property name="dataSource" ref="dataSource" />
</bean>
 
<bean class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
  <property name="dataSource" ref="dataSource" />
  <property name="sql" value="select password from user_table where lower(username) = lower(?)" />
</bean>

user_table basicweb

username password

 

beans DataSource

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">  
	<property name="driverClassName"><value>com.mysql.jdbc.Driver</value></property>  
	<property name="url"><value>jdbc:mysql://localhost:3306/basicweb</value></property>  
	<property name="username"><value>root</value></property>  
	<property name="password"><value>password123</value></property>  
</bean>   

warwar WEB-INF lib mysql JDBC jar cas-server-3.5.0-RC1\modules\cas-server-support-jdbc-3.5.0-RC1.jar libwartomcat\webapps

,Post form , web.xml :

	<filter>
		<filter-name>CAS Validation Filter</filter-name>
		<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
		<init-param>
			<param-name>casServerUrlPrefix</param-name>
			<param-value>http://localhost:8080/cas</param-value>
		</init-param>
		<init-param>
			<param-name>serverName</param-name>
			<param-value>http://localhost:8080</param-value>
		</init-param>


		<!--    -->
		<init-param>
			<param-name>acceptAnyProxy</param-name>
			<param-value>true</param-value>
		</init-param>

		<!--    false,                -->
		<init-param>
			<param-name>redirectAfterValidation</param-name>
			<param-value>false</param-value>
		</init-param>

	</filter>
, ticket, URL ticket , ticket, form