CAS单点登录配置[3]:服务器端配置
在準(zhǔn)備工作,證書(shū)生成等工作完成后,本篇介紹服務(wù)器端的配置。
JDK配置
我們將生成的cacerts文件分別拷貝到JDK目錄下的jre/lib/security目錄下及JRE對(duì)應(yīng)的目錄中,如果之前存在此文件,請(qǐng)?zhí)鎿Q;
ENDTomcat配置
Step?1:將除了cacerts之外所有的證書(shū)文件拷貝到tomcat?的根目錄下,如果服務(wù)器端和客戶端共用一個(gè)tomcat只需要拷貝一次,否則有幾個(gè)tomcat就拷貝幾次。
Step?2:修改Tomcat的conf/server.xml配置文件,找到如下配置代碼:
<Connector?port="8443"?protocol="HTTP/1.1"?SSLEnabled="true"
maxThreads="150"?scheme="https"?secure="true"
clientAuth="false"?sslProtocol="TLS"?/>
**************************************************************
修改為:
<Connector?protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443"?minSpareThreads="5"?maxSpareThreads="75"
enableLookups="true"?disableUploadTimeout="true"
acceptCount="100"?maxThreads="200"
scheme="https"?secure="true"?SSLEnabled="true"
clientAuth="false"?sslProtocol="TLS"
keystoreFile="D:/Develop/Tomcat7.0.55/server.keystore"
keystorePass="changeit"/>
[注意]此處SSL的port為8443,如果希望訪問(wèn)時(shí)不帶端口號(hào)可以改為默認(rèn)的443端口,keystoreFile指向我們復(fù)制的server.keystore文件,keystorePass則是密碼信息。
END數(shù)據(jù)庫(kù)配置
Step?1:由于CAS默認(rèn)策略是用戶名=密碼,即登錄成功,這顯然不安全,打開(kāi)tomcat安裝目錄下按webapps/cas/WEB-INF找到deployerConfigContext.xml修改如下兩處:
第一處:
將<bean class=
"org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler"?/>
改為:
<bean?class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
<property?name="dataSource"?ref="dataSource"></property>
<property?name="sql"?value="select?password?from?tbl_user?where?login_name=??">
</property>
<property?name="passwordEncoder"?ref="MD5PasswordEncoder"></property>
</bean>
*****************************************************************
從tbl_user中查詢用戶名密碼,表結(jié)構(gòu)如下。
第二處:
在</beans>之前添加
<bean id="auditTrailManager"class=
"com.github.inspektr.audit.support.Slf4jLoggingAuditTrailManager"?/>
<bean?
id="MD5PasswordEncoder"class=
"org.jasig.cas.authentication.handler.DefaultPasswordEncoder">
<constructor-arg?index="0">
<value>MD5</value>
</constructor-arg>
</bean>
<bean?
id="dataSource"?class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>com.microsoft.sqlserver.jdbc.SQLServerDriver
</value>
</property>
<property?name="url">
<value>jdbc:sqlserver://localhost:1433;DatabaseName=m2m
</value>
</property>
<property?name="username"><value>sa</value></property>
<propertyname="password">
<value>databaseadmin</value>
</property>
</bean>
此處使用SQLServer2008數(shù)據(jù)庫(kù),若是其他數(shù)據(jù)庫(kù)加粗傾斜部分需要修改。
數(shù)據(jù)表結(jié)構(gòu)如下圖:
[注意]數(shù)據(jù)源是SQLServer,做完如上配置還要到數(shù)據(jù)庫(kù)里面建立相應(yīng)的表,與配置中的字段對(duì)應(yīng),另外此處采用了32位MD5加密算法,所以數(shù)據(jù)庫(kù)中的密碼字段必須也要采用MD5加密。
[附]:
admin888???32位MD5密文:7fef6171469e80d32c0559f88b377245
先不要急著運(yùn)行,缺少Jar包會(huì)報(bào)錯(cuò)...
Step?2:找到cas-server-3.4.10/modules目錄,
將cas-server-support-jdbc-3.4.10.jar及相應(yīng)的數(shù)據(jù)庫(kù)驅(qū)動(dòng)包拷貝到cas的lib目錄下。
配置完成,重啟tomcat,如果報(bào)錯(cuò)請(qǐng)檢查配置文件或jar包導(dǎo)入是否有錯(cuò)!
測(cè)試:用戶名密碼都輸入1
再換成我們數(shù)據(jù)庫(kù)中設(shè)置的用戶名密碼,如果登錄成功表示服務(wù)器端配置成功!
END注意事項(xiàng)
- 如果配置了xml文件后無(wú)法顯示登錄界面,請(qǐng)仔細(xì)檢查xml中的標(biāo)簽是否對(duì)稱,內(nèi)容是否正確!
- 數(shù)據(jù)庫(kù)為SQlServer2008
轉(zhuǎn)載于:https://www.cnblogs.com/longshiyVip/p/5067712.html
總結(jié)
以上是生活随笔為你收集整理的CAS单点登录配置[3]:服务器端配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 函数递归以及尾递归调用
- 下一篇: 排列与组合