簡體   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