票证验证后无限重定向循环

时间:2013-06-20 13:59:09

标签: validation tomcat filter liferay cas

我正在使用Liferay Portal 6.1.1 CE GA2。 经过数小时的研究,我得到了以下工作:

  • 从LDAP服务器导入并将属性自定义映射到用户组。
  • 登录后重定向到特定页面(基于用户组)。
  • 通过CAS进行身份验证。这意味着获取ServiceTicket并登录相应的用户。

现在我正在尝试获取ProxyTickets,因此我可以代理同一CAS-Server背后的其他应用程序。

我没有收到任何错误,但是Mozilla给了我一个重定向错误,例如页面被重定向到永远不会被加载的方式。 我google了很多,尝试了不同的方法,但没有任何帮助。

我的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>* snip */cas/login</param-value>
  </init-param>
  <init-param>
    <param-name>serverName</param-name>
    <param-value>* snip *</param-value>
  </init-param>
</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>* snip */cas/</param-value>
  </init-param>
  <init-param>
    <param-name>serverName</param-name>
    <param-value>* snip *</param-value>
  </init-param>
  <init-param>
    <param-name>proxyCallbackUrl</param-name>
    <param-value>https://* snip */pgtCallback</param-value>
  </init-param>
  <init-param>
    <param-name>proxyReceptorUrl</param-name>
    <param-value>/pgtCallback</param-value>
  </init-param>
</filter>

<filter-mapping>
  <filter-name>CAS Validation Filter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
  <filter-name>CAS Authentication Filter</filter-name>
  <url-pattern>/c/portal/login</url-pattern>
</filter-mapping>

我尝试了filter-mappings的各种组合,但没有任何帮助。

Eclipse中控制台的输出提示已完成多个连续请求。每个人都会获得TGTPGTIOUPGT,但在验证ST后会触发新的验证请求。直到Mozilla结束重定向循环为止。

我还尝试指定service而不是serverName,但所有内容都保持不变。 将参数redirectAfterValidation设置为false但我得到MalformedURLException

希望我没有忘记任何信息,请帮助我。

提前致谢。

0 个答案:

没有答案