cas的几个误区

调试了一上午,搞定了,这里做个记录。

1.错误:unable to find valid certification path to requested target

这个错误是说找不到证书,而很多人都确认自己确实导入了证书,我也是。这就可以从下面两点去排错:

  1. 如果你更新了cas server的证书信息,那么请重启cas server,不然无论你在client端怎么处理,它还是报这个错;
  2. 确保你使用keytool 命令import的路径是eclipse所使用的jre中,很多电脑中有多个jre,自己要确保你导入的确实是eclipse所使用的那个jre中;
经过以上两个排错,问题基本可以排除了。

2。错误:No subject alternative names present

这个错误是我们导入了证书,但是这个证书却不能被正确的识别。这就要回到我们在使用keytool  命令genkey的时候了,命令如下:

keytool -genkey -alias tomcat -keyalg RSA -keystore d:\cskeys -dname  -storepass changeit

然后提示我们要输CN 城市,国家等等信息,这里最重要的是CN这个值,经我的实验,这个值不要使用IP地址也不要使用localhost(如果你仅仅是在本机测试那可以),推荐使用域名(可是一般人没有),那就使用主机名,我使用主机名一切工作正常。


关于cas client端的配置文件的说明,常用的配置文件如下(指的是涉及到地址的配置):

<filter>
		<filter-name>CASFilter</filter-name>
		<filter-class>org.jasig.cas.client.authentication.AuthenticationFilter</filter-class>
		<init-param>
			<param-name>casServerLoginUrl</param-name>
			<param-value>https://hfut:8443/cas/login</param-value>
			<!--这里的server是服务端的IP -->
		</init-param>
		<init-param>
			<param-name>serverName</param-name>
			<param-value>http://acer:8080/</param-value><!--注意:这里使用的一定是cas client的地址,这也是cas server返回的地址>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>CASFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

	<!-- 该过滤器负责对Ticket的校验工作,必须启用它 -->
	<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://hfut:8443/cas</param-value>
		</init-param>
		<init-param>
			<param-name>serverName</param-name>
			<param-value>http://acer:8080/</param-value><!--同上-->
		</init-param>
	</filter>

上面两处最重要的地方就是serverName的值了,这个值是cas server认证成功后返回的值,所以这里一定要设置成你的应用的地址,级cas client的地址。


ps:区别下cas server和cas client。

cas server不用说,大家都很清楚,关键是这个cas client,特别注意,这个client是针对cas server说的。而实际上,cas client是集成到某个应用服务器的,也就是说它是被cas server认证的应用,只有通过了cas server的认证,这个应用(即client)就可以被访问了。这个client对用户而言就是server了,即我们通常意义上的应用服务器。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值