反饋已提交
網絡繁忙
CAS 单点登录方案配置完成,配合Nginx的时候,访问nginx/webroot/decision,URL 会变化成集群节点的地址。
仅配置一个 CAS 服务端,每个集群节点作为 CAS 的一个客户端,FineReport 工程未配置 HTTPS 。
注:本文提供方案只适用于 yale 策略,不适用于 jasig 。
具体操作步骤请参见:配置 FineReport 作为 CAS 客户端
配置完成后,注意事项如下:
两个 client-jar 包需换成修改后的 JAR,替换到%TOMCAT_HOME%\webapps\webroot\WEB-INF\lib下,JAR 包文件如下:
casclient.jar
cas-client-core-3.2.1.jar
1)在%TOMCAT_HOME%\webapps\webroot\WEB-INF目录下修改 web.xml 文件。文件如下:web.xml
xml 内容如下:
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <display-name>Template WebApp</display-name> <mime-mapping> <extension>msi</extension> <mime-type>application/x-msi</mime-type> </mime-mapping> <!-- 填写退出的URL --> <context-param> <param-name>casServerLogoutUrl</param-name> <param-value>https://yina:8443/cas/logout</param-value> </context-param> <!--单点退出配置 --> <listener> <listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class> </listener> <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> <filter> <filter-name>CASFilter</filter-name> <filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class> <init-param> <param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name> <param-value>https://yina:8443/cas/login</param-value> <!--cas提供登录页面的url--> </init-param> <init-param> <param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name> <param-value>https://yina:8443/cas/proxyValidate</param-value> <!--cas提供service ticker或者proxy ticket验证服务的url--> </init-param> <init-param> <param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name> <param-value>192.168.1.127</param-value> <!--客户端应用的域名和端口--> </init-param> <!--排除远程设计--> <init-param> <param-name>edu.yale.its.tp.cas.client.filter.casExcludeUrl</param-name> <param-value>/decision/remote/design/*</param-value> </init-param> </filter> <filter-mapping> <filter-name>CASFilter</filter-name> <url-pattern>/decision/*</url-pattern> </filter-mapping> <filter> <filter-name>FrFilter</filter-name> <filter-class>com.fr.FrFilter</filter-class> </filter> <filter-mapping> <filter-name>FrFilter</filter-name> <url-pattern>/decision/*</url-pattern> </filter-mapping> </web-app>
2)web.xml 中 yina 为个人配置的域名,请按照个人设置进行修改。如下图所示:
3)web.xml 中客户端应用的域名和端口需改成 nginx 服务器地址和监听端口(示例中 nginx 端口为80,所以在 web.xml 中省略了端口号)。
如下图所示:
4)为了正常使用远程设计功能,需要在 web.xml 中额外配置一下:
将 FrFilter.class 文件改为修改后的 class 文件,替换到%TOMCAT_HOME%\webroot\WEB-INF\classes\com\fr目录下。
class 文件如下,请解压后使用:FrFilter.rar
注:不配置CAS登出方案可忽略此步骤及注意点
CAS登出方案配置请参见: CAS 登出方案
CAS登出方案配置注意点如下:
logout.jsp文件修改如下:logout.rar 。页面内容如下所示:
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%><%@ page import="java.net.URLEncoder" %><%@ page import="edu.yale.its.tp.cas.client.filter.CASFilter" %><%@ page import="com.fr.FrFilter" %><html><body><% CASFilter.deleteTicket(request, response); FrFilter.deleteToken(request); String loginUrl = URLEncoder.encode("http://192.168.1.127/webroot/decision"); response.sendRedirect(application.getInitParameter("casServerLogoutUrl")+"?service=" + loginUrl);%></body></html>
注:JSP文件中,loginUrl 需要改成 nginx 服务器地址和端口(示例中 nginx 端口为80,所以在 web.xml 中省略了端口号),如下图所示
将 logout.jsp 文件放到%TOMCAT_HOME%\webapps\webroot\下,如下图所示:
平台配置集群操作请参见:平台配置集群
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙