繁体   English   中英

将CAS集成到Java动态Web项目中

[英]Integrating CAS into Java Dynamic Web Project

设定


在Tomcat(ROOT)中部署的“ Hello World” servlet

(1)这在没有CAS的情况下有效,我可以通过以下URL访问我的应用程序:

  • http:// localhost:8090 /你好
  • https:// localhost:8443 /你好

(2)我在Tomcat ROOT的web.xml中插入了以下内容:

<servlet>
    <servlet-name>hello</servlet-name>
    <servlet-class>org.leo.Hello</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>hello</servlet-name>
    <url-pattern>/hello</url-pattern>
</servlet-mapping>

<!-- Authentication filter -->
<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://localhost:8443/cas/login</param-value> 
    </init-param> 
    <init-param> 
        <param-name>serverName</param-name> 
        <param-value>https://localhost:8443</param-value>
    </init-param> 
</filter>

<!-- Ticket validation filter -->
<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://localhost:8443/cas</param-value> 
    </init-param> 
    <init-param> 
        <param-name>serverName</param-name> 
        <param-value>https://localhost:8443</param-value>
    </init-param>
</filter> 

<!-- HTTP servlet request wrapper filter -->
<filter>
    <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name> 
    <filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class> 
</filter>

<!-- Assertion thread local filter -->
<filter>
    <filter-name>CAS Assertion Thread Local Filter</filter-name>
    <filter-class>org.jasig.cas.client.util.AssertionThreadLocalFilter</filter-class>
</filter>

<filter-mapping> 
    <filter-name>CAS Authentication Filter</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 
<filter-mapping> 
    <filter-name>CAS Validation Filter</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 
<filter-mapping> 
    <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping>
<filter-mapping>
    <filter-name>CAS Assertion Thread Local Filter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

(3)CAS服务器也部署在Tomcat中


问题


如果我正确理解您的问题,则说明您正在尝试将您的Hello Web应用程序归类

我相信,要使您的应用程序更加实用,它需要在安全端口上运行。

话虽如此,您将要对以下服务URL, https:// localhost:8443 / hello进行归类化

您可以尝试将web.xml条目(与CAS相关)添加到hello应用程序的web.xml中,而不是tomcat的ROOT web.xml中吗?

(1)我更改了Tomcat ROOT的web.xml,因为我的应用程序的类被复制到ROOT文件夹中并从那里进行部署。

(2)在检查Tomcat和CAS服务器的日志时遇到了问题。 缺少许多日志记录(和其他一些)库。 我列出了所有这些,因为我不记得确切的添加内容:

  • 公共记录
  • slf4j-api
  • slf4j-ext / li>
  • slf4j-jcl
  • slf4j-jdk
  • slf4j-log4j
  • slf4j-migrator
  • 共同点
  • 普通人

(3)我并不声称自己对此特定知识有所了解,但是可以通过在以下文件的“ serverId”属性中添加HTTP来确定HTTP URL:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM