热门IT资讯网

代码审查Collaborator的单点登录——通过Java Servlet配置单点登录

发表于:2024-11-26 作者:热门IT资讯网编辑
编辑最后更新 2024年11月26日,Collaborator的代码审查可以为开发测试人员和管理者提供帮助,生产出高质量的代码。团队可以用它在一个透明、共同的框架中进行同行代码审查、用户示例和测试计划的编辑。本文介绍如何使用Java se

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服务器,验证用户并执行单一注销。

打开 /tomcat/webapps/ROOT/WEB-INF/web.xml文件并向其追加以下行:

  CAS Authentication Filter  org.jasig.cas.client.authentication.AuthenticationFilter      casServerLoginUrl    https://yourcollabserver:8443/cas-server-webapp-3.5.2/login        serverName    https://yourcollabserver:8443        gateway    false    CAS Authentication Filter  /ui/*  /go/*  CAS Validation Filter  org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter      casServerUrlPrefix    https://yourcollabserver:8443/cas-server-webapp-3.5.2/        serverName    https://yourcollabserver:8443    CAS Validation Filter  /*  CAS HttpServletRequest Wrapper Filter  org.jasig.cas.client.util.HttpServletRequestWrapperFilter    CAS HttpServletRequest Wrapper Filter  CAS Single Sign Out Filter  org.jasig.cas.client.session.SingleSignOutFilter  CAS Single Sign Out Filter  /*  org.jasig.cas.client.session.SingleSignOutHttpSessionListener

提示:请记住替换yourcollabserverCollaborator服务器的实际URL


配置Collaborator服务器VM选项

在此步骤中,我们需要更改服务器的VM选项以启用Collaborator和CAS服务器之间的SSL连接,并指定注销重定向URL。

打开 /ccollab-server.vmoptions文件并向其添加以下行:

-Djavax.net.ssl.keyStore=/tomcat/conf/collab.ks-Djavax.net.ssl.keyStorePassword=-Djavax.net.ssl.trustStore=/tomcat/conf/cacerts-Djavax.net.ssl.trustStorePassword=-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、打开 /tomcat/webapps/cas-server-webapp-3.5.2/WEB-INF/文件夹,等待在此文件夹中创建名为cas.properties的文件。该cas.properties文件从部署CAS服务器,web应用,3.5.2.war Web应用程序归档,所以创建它可能需要一些时间。

3、打开 /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 requestscas.logout.followServiceRedirects=true

重新启动Collaborator服务器

要应用所有更改,请重新启动Collaborator服务器。

CAS服务器的已知问题

  • 目前,CAS服务器设置仅允许具有一致的登录、密码值。也就是说,密码必须与登录名具有相同的值。

  • 由于cookie处理问题,CAS服务器单一注销功能可能无法与Collaborator Web客户端正常工作。即,从Collaborator Web客户端注销不会终止CAS服务器上的会话。因此,随后尝试打开任何Collaborator Web客户端或UI页面将不会重定向到CAS服务器登录页面,而是打开Collaborator标准登录页面。此问题不会影响或转到 Web客户端页面,但Collaborator Web客户端页面的主要部分是或UI页面并受到影响。为了避免这个问题:




0