您好,登錄后才能下訂單哦!
Collaborator的代碼審查可以為開發測試人員和管理者提供幫助,生產出高質量的代碼。團隊可以用它在一個透明、共同的框架中進行同行代碼審查、用戶示例和測試計劃的編輯。
本文介紹如何使用Java servlet為Tomcat在SSO服務器和Collaborator之間建立單點登錄。要了解單點登錄的一般原理,請參閱單點登錄。
下面我們將介紹如何在Collaborator和Apereo Central Authentication Service(CAS)之間建立單點登錄。與其他供應商的單點登錄服務器的集成以類似的方式執行。
啟用HTTPS連接
大多數單點登錄服務器使用HTTPS連接,因此您可能還需要為Collaborator服務器啟用它。不要忘記重新啟動Collaborator服務器以應用更改。
安裝SSO服務器和客戶端組件
在Apereo Central Authentication Service中,SSO服務器組件實現為Java servlet,并為不同的平臺和技術(Java、.NET、PHP、Python等)提供SSO客戶端。由于Collaborator是一個Java應用程序,我們將使用Java CAS客戶端。
備注:
為了簡化示例,我們將在同一個Tomcat服務器實例上安裝CAS服務器和CAS客戶端。
并非所有版本的CAS服務器和CAS客戶端都相互兼容。例如,CAS服務器4.0不適用于CAS客戶端3.3。在此集成中,將使用CAS服務器3.5.2和CAS客戶端3.1.12。
安裝和準備所需的軟件:
1、下載CAS服務器存檔文件并將其解壓縮到臨時文件夾。
2、將modules / cas-server-webapp-3.5.2.war文件復制到
3、下載CAS客戶端存檔文件并將其解壓縮到另一個臨時文件夾。
4、將所有文件從cas-client-3.1.12 / modules /文件夾復制到
將過濾器添加到Collaborator Tomcat服務器
在此步驟中,我們將向Tomcat服務器添加幾個過濾器。這些過濾器將檢測未經身份驗證的用戶,將其重定向到SSO服務器,驗證用戶并執行單一注銷。
打開<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>https://yourcollabserver:8443/cas-server-webapp-3.5.2/login</param-value> ??</init-param> ??<init-param> ????<param-name>serverName</param-name> ????<param-value>https://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>https://yourcollabserver:8443/cas-server-webapp-3.5.2/</param-value> ??</init-param> ??<init-param> ????<param-name>serverName</param-name> ????<param-value>https://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>
提示:請記住替換yourcollabserverCollaborator服務器的實際URL
配置Collaborator服務器VM選項
在此步驟中,我們需要更改服務器的VM選項以啟用Collaborator和CAS服務器之間的SSL連接,并指定注銷重定向URL。
打開<Collaborator服務器安裝> /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=https://yourcollabserver:8443/cas-server-webapp-3.5.2/logout
后一個VM選項指定用戶在Collaborator Web界面中單擊“注銷”時將重定向到的URL 。
或者,您可以通過設置VM選項從Collaborator Web界面中刪除Logout鏈接,如下所示:
-Dsmartbear.ccollab.sso.logout.redirect.url=hide
在這種情況下,用戶將手動執行從SSO服務器注銷。
重新啟動Collaborator服務器以應用VM選項中的更改。
為注銷請求配置CAS屬性
在此步驟中,我們將配置CAS服務器應如何處理注銷請求。
1、打開Collaborator? Web客戶端。
2、打開<Collaborator Server> /tomcat/webapps/cas-server-webapp-3.5.2/WEB-INF/文件夾,等待在此文件夾中創建名為cas.properties的文件。該cas.properties文件從部署CAS服務器,web應用,3.5.2.war Web應用程序歸檔,所以創建它可能需要一些時間。
3、打開<Collaborator Server> /tomcat/webapps/cas-server-webapp-3.5.2/WEB-INF/cas.properties文件,并將該cas.logout.followServiceRedirects屬性的值設置為true:
#?Specify?whether?CAS?should?redirect?to?the?specified?service?parameter?on?/logout?requests cas.logout.followServiceRedirects=true
重新啟動Collaborator服務器
要應用所有更改,請重新啟動Collaborator服務器。
CAS服務器的已知問題
目前,CAS服務器設置僅允許具有一致的登錄、密碼值。也就是說,密碼必須與登錄名具有相同的值。
由于cookie處理問題,CAS服務器單一注銷功能可能無法與Collaborator Web客戶端正常工作。即,從Collaborator Web客戶端注銷不會終止CAS服務器上的會話。因此,隨后嘗試打開任何Collaborator Web客戶端或UI頁面將不會重定向到CAS服務器登錄頁面,而是打開Collaborator標準登錄頁面。此問題不會影響或轉到 Web客戶端頁面,但Collaborator Web客戶端頁面的主要部分是或UI頁面并受到影響。為了避免這個問題:
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。