欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

CAS实战(cas-server-3.3.4 + cas-client-3.1.3)七 博客分类: CAS cas-server-3.3.4 + cas-client-3.1.3

程序员文章站 2024-02-13 12:47:52
...

 

CAS客户端(接入CAS的子系统)配置

2.x的配置

CAS客户端配置非常的简单,但这里需要进行些修改,并导入2.xjar

以下是官方文档中客户端web.xml中配置

<filter>

<filter-name>CAS Filter</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://casserver:8443/cas/login</param-value>

<!-- casservercas服务器的地址 -->

</init-param>

<init-param>

<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>

<param-value>https:// casserver:8443/cas/serviceValidate</param-value>

</init-param>

<init-param>

<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>

<param-value>server1:8080</param-value>

<!--注意,这里server1cas客户端(接入CAS的子系统)的地址 -->

</init-param>

</filter>

<filter-mapping>

<filter-name>CAS Filter</filter-name>

<!--对访问子系统的所有连接进行拦截,转向cas服务器端验证,验证通过后就不会被拦截了-->

<url-pattern>/*</url-pattern>

</filter-mapping>

 

 

CASFilter 必需的参数

参数名

作用

edu.yale.its.tp.cas.client.filter.loginUrl

指定 CAS 提供登录页面的 URL

edu.yale.its.tp.cas.client.filter.validateUrl

指定 CAS 提供 service ticket proxy ticket 验证服务的 URL

edu.yale.its.tp.cas.client.filter.serverName

指定客户端的域名和端口,是指客户端应用所在机器而不是 CAS Server 所在机器,该参数或 serviceUrl 至少有一个必须指定

edu.yale.its.tp.cas.client.filter.serviceUrl

该参数指定过后将覆盖 serverName 参数,成为登录成功过后重定向的目的地址



CASFilter 可选参数

参数名

作用

edu.yale.its.tp.cas.client.filter.proxyCallbackUrl

用于当前应用需要作为其他服务的代理(proxy)时获取 Proxy Granting Ticket 的地址

edu.yale.its.tp.cas.client.filter.authorizedProxy

用于允许当前应用从代理处获取 proxy tickets,该参数接受以空格分隔开的多个 proxy URLs,但实际使用只需要一个成功即可。当指定该参数过后,需要修改 validateUrl proxyValidate,而不再是 serviceValidate

edu.yale.its.tp.cas.client.filter.renew

如果指定为 true,那么受保护的资源每次被访问时均要求用户重新进行验证,而不管之前是否已经通过

edu.yale.its.tp.cas.client.filter.wrapRequest

如果指定为 true,那么 CASFilter 将重新包装 HttpRequest,并且使 getRemoteUser() 方法返回当前登录用户的用户名

edu.yale.its.tp.cas.client.filter.gateway

指定 gateway 属性

 

以上是2.x版本的配置方式(我没测试过,COPY来的但很多文章都这样配置,应该没有问题)