翻譯|使用教程|編輯:莫成敏|2019-08-19 16:07:52.137|閱讀 355 次
概述:?Collaborator的代碼審查可以為開發(fā)測(cè)試人員和管理者提供幫助,生產(chǎn)出高質(zhì)量的代碼。本文介紹如何使用Java servlet為Tomcat在SSO服務(wù)器和Collaborator之間建立單點(diǎn)登錄。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Collaborator的代碼審查可以為開發(fā)測(cè)試人員和管理者提供幫助,生產(chǎn)出高質(zhì)量的代碼。團(tuán)隊(duì)可以用它在一個(gè)透明、共同的框架中進(jìn)行同行代碼審查、用戶示例和測(cè)試計(jì)劃的編輯。
點(diǎn)擊下載Collaborator免費(fèi)版
本文介紹如何使用Java servlet為Tomcat在SSO服務(wù)器和Collaborator之間建立單點(diǎn)登錄。要了解單點(diǎn)登錄的一般原理,請(qǐng)參閱單點(diǎn)登錄。
下面我們將介紹如何在Collaborator和Apereo Central Authentication Service(CAS)之間建立單點(diǎn)登錄。與其他供應(yīng)商的單點(diǎn)登錄服務(wù)器的集成以類似的方式執(zhí)行。
啟用HTTPS連接
大多數(shù)單點(diǎn)登錄服務(wù)器使用HTTPS連接,因此您可能還需要為Collaborator服務(wù)器啟用它。有關(guān)說明,請(qǐng)參閱配置HTTPS。不要忘記重新啟動(dòng)Collaborator服務(wù)器以應(yīng)用更改。
安裝SSO服務(wù)器和客戶端組件
在Apereo Central Authentication Service中,SSO服務(wù)器組件實(shí)現(xiàn)為Java servlet,并為不同的平臺(tái)和技術(shù)(Java、.NET、PHP、Python等)提供SSO客戶端。由于Collaborator是一個(gè)Java應(yīng)用程序,我們將使用Java CAS客戶端。
備注:
為了簡(jiǎn)化示例,我們將在同一個(gè)Tomcat服務(wù)器實(shí)例上安裝CAS服務(wù)器和CAS客戶端。
并非所有版本的CAS服務(wù)器和CAS客戶端都相互兼容。例如,CAS服務(wù)器4.0不適用于CAS客戶端3.3。在此集成中,將使用CAS服務(wù)器3.5.2和CAS客戶端3.1.12。
安裝和準(zhǔn)備所需的軟件:
1、下載CAS服務(wù)器存檔文件并將其解壓縮到臨時(shí)文件夾。
2、將modules / cas-server-webapp-3.5.2.war文件復(fù)制到
3、下載CAS客戶端存檔文件并將其解壓縮到另一個(gè)臨時(shí)文件夾。
4、將所有文件從cas-client-3.1.12 / modules /文件夾復(fù)制到
將過濾器添加到Collaborator Tomcat服務(wù)器
在此步驟中,我們將向Tomcat服務(wù)器添加幾個(gè)過濾器。這些過濾器將檢測(cè)未經(jīng)身份驗(yàn)證的用戶,將其重定向到SSO服務(wù)器,驗(yàn)證用戶并執(zhí)行單一注銷。
打開<Collaborator Server> /tomcat/webapps/ROOT/WEB-INF/web.xml文件并向其追加以下行:
<filter> <filter-name>CAS Authentication Filter</filter-name> <filter-class>org.jasig.cas.client.authentication.AuthenticationFilter</filter-class> <init-param> <param-name>casServerLoginUrl</param-name> <param-value>//yourcollabserver:8443/cas-server-webapp-3.5.2/login</param-value> </init-param> <init-param> <param-name>serverName</param-name> <param-value>//yourcollabserver:8443</param-value> </init-param> <init-param> <param-name>gateway</param-name> <param-value>false</param-value> </init-param> </filter> <filter-mapping> <filter-name>CAS Authentication Filter</filter-name> <url-pattern>/ui/*</url-pattern> <url-pattern>/go/*</url-pattern> </filter-mapping> <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>//yourcollabserver:8443/cas-server-webapp-3.5.2/</param-value> </init-param> <init-param> <param-name>serverName</param-name> <param-value>//yourcollabserver:8443</param-value> </init-param> </filter> <filter-mapping> <filter-name>CAS Validation Filter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter> <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name> <filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class> </filter> <filter-mapping> <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name> </filter-mapping> <filter> <filter-name>CAS Single Sign Out Filter</filter-name> <filter-class>org.jasig.cas.client.session.SingleSignOutFilter </filter-class> </filter> <filter-mapping> <filter-name>CAS Single Sign Out Filter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <listener> <listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class> </listener>
提示:請(qǐng)記住替換yourcollabserverCollaborator服務(wù)器的實(shí)際URL
配置Collaborator服務(wù)器VM選項(xiàng)
在此步驟中,我們需要更改服務(wù)器的VM選項(xiàng)以啟用Collaborator和CAS服務(wù)器之間的SSL連接,并指定注銷重定向URL。
打開<Collaborator服務(wù)器安裝> /ccollab-server.vmoptions文件并向其添加以下行:
-Djavax.net.ssl.keyStore=<Collaborator Server>/tomcat/conf/collab.ks -Djavax.net.ssl.keyStorePassword=<the keystore password> -Djavax.net.ssl.trustStore=<Collaborator Server>/tomcat/conf/cacerts -Djavax.net.ssl.trustStorePassword=<the truststore password> -Dsmartbear.ccollab.sso.logout.redirect.url=//yourcollabserver:8443/cas-server-webapp-3.5.2/logout
后一個(gè)VM選項(xiàng)指定用戶在Collaborator Web界面中單擊“注銷”時(shí)將重定向到的URL 。
或者,您可以通過設(shè)置VM選項(xiàng)從Collaborator Web界面中刪除Logout鏈接,如下所示:
-Dsmartbear.ccollab.sso.logout.redirect.url=hide
在這種情況下,用戶將手動(dòng)執(zhí)行從SSO服務(wù)器注銷。
重新啟動(dòng)Collaborator服務(wù)器以應(yīng)用VM選項(xiàng)中的更改。
為注銷請(qǐng)求配置CAS屬性
在此步驟中,我們將配置CAS服務(wù)器應(yīng)如何處理注銷請(qǐng)求。
1、打開Collaborator Web客戶端。
2、打開<Collaborator Server> /tomcat/webapps/cas-server-webapp-3.5.2/WEB-INF/文件夾,等待在此文件夾中創(chuàng)建名為cas.properties的文件。該cas.properties文件從部署CAS服務(wù)器,web應(yīng)用,3.5.2.war Web應(yīng)用程序歸檔,所以創(chuàng)建它可能需要一些時(shí)間。
3、打開<Collaborator Server> /tomcat/webapps/cas-server-webapp-3.5.2/WEB-INF/cas.properties文件,并將該cas.logout.followServiceRedirects屬性的值設(shè)置為true:
# Specify whether CAS should redirect to the specified service parameter on /logout requests cas.logout.followServiceRedirects=true
重新啟動(dòng)Collaborator服務(wù)器
要應(yīng)用所有更改,請(qǐng)重新啟動(dòng)Collaborator服務(wù)器。
CAS服務(wù)器的已知問題
目前,CAS服務(wù)器設(shè)置僅允許具有一致的登錄/密碼值。也就是說,密碼必須與登錄名具有相同的值。
由于cookie處理問題,CAS服務(wù)器單一注銷功能可能無法與Collaborator Web客戶端正常工作。即,從Collaborator Web客戶端注銷不會(huì)終止CAS服務(wù)器上的會(huì)話。因此,隨后嘗試打開任何Collaborator Web客戶端/ ui頁面將不會(huì)重定向到CAS服務(wù)器登錄頁面,而是打開Collaborator標(biāo)準(zhǔn)登錄頁面。此問題不會(huì)影響/轉(zhuǎn)到 Web客戶端頁面,但Collaborator Web客戶端頁面的主要部分是/ ui頁面并受到影響。為了避免這個(gè)問題:
1、打開<Collaborator Server> /tomcat/webapps/cas-server-webapp-3.5.2/WEB-INF/spring-configuration/ticketGrantingTicketCookieGenerator.xml文件,并將該p:cookieSecure屬性的值設(shè)置為false:
<bean id="ticketGrantingTicketCookieGenerator" class="org.jasig.cas.web.support.CookieRetrievingCookieGenerator" p:cookieSecure="false" p:cookieMaxAge="-1" p:cookieName="CASTGC" p:cookiePath="/cas" />
2、從Collaborator Web客戶端和CAS服務(wù)器注銷。
3、清除瀏覽器cookie。
或者,您可以禁用LogoutCollaborator Web界面中的鏈接并從CAS服務(wù)器執(zhí)行注銷。
金喜正規(guī)買球相關(guān)的文章:
Collaborator教程:什么是單點(diǎn)登錄?Collaborator單點(diǎn)登錄的幾個(gè)驗(yàn)證方法
代碼審查Collaborator教程:?jiǎn)吸c(diǎn)登錄——通過SAML配置單點(diǎn)登錄(上)
代碼審查Collaborator教程:?jiǎn)吸c(diǎn)登錄——通過SAML配置單點(diǎn)登錄(下)
代碼審查Collaborator教程:?jiǎn)吸c(diǎn)登錄——通過Crowd OpenID配置單點(diǎn)登錄
想要購買Collaborator正版授權(quán),或了解更多產(chǎn)品信息請(qǐng)點(diǎn)擊
掃描關(guān)注慧聚IT微信公眾號(hào),及時(shí)獲取最新動(dòng)態(tài)及最新資訊
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn