32.3.1 Service Ticket Authentication服务票认证

本节介绍如何设置Spring Security来验证服务票证。通常这是一个网络应用程序所需要的。您需要将服务属性bean添加到您的应用程序上下文中。这代表您的CAS服务:

 


 

该服务必须等于将由CasAuthenticationFilter监控的网址。sendRenew默认为假,但如果您的应用程序特别敏感,则应该设置为真。该参数的作用是告诉CAS登录服务,单点登录是不可接受的。相反,用户需要重新输入用户名和密码才能访问该服务。

应该配置以下beans来开始CAS身份验证过程(假设您使用的是名称空间配置

 

 

 

 

 要使CAS运行,异常转换筛选器ExceptionTranslationFilter 必须将其身份验证入口点authenticationEntryPoint 属性设置CasAuthenticationEntryPoint bean。这可以很容易地用入口点引用来完成,就像上面的例子一样。CasAuthenticationEntryPoint必须引用服务属性ServiceProperties  bean(如上所述),它提供了企业的CAS登录服务器的网址。这是用户浏览器将被重定向的地方。

CasAuthenticationFilter具有与Username PassWordAuthenticationFilter(用于基于表单的登录)非常相似的属性。您可以使用这些属性来自定义身份验证成功和失败的行为。

接下来,您需要添加一个CasAuthenticationProvider及其协作者:

 

 

 一旦用户被CAS认证,CasAuthenticationProvider就使用用户详细信息服务UserDetailsService 

实例为用户加载权限。我们在这里展示了一个简单的内存设置。请注意,CasAuthenticationProvider实际上并不使用密码进行身份验证,但它使用了权限。

如果你回过头来看CAS是如何工作的,这些beans都是合理的不言自明的。

这就完成了CAS最基本的配置。如果您没有犯任何错误,您的web应用程序应该在CAS单点登录的框架内愉快地工作。Spring Security的其他部分不需要关心CAS处理身份验证的事实。在接下来的章节中,我们将讨论一些(可选的)更高级的配置。

 

posted @ 2020-08-15 10:49  节日快乐  阅读(212)  评论(0编辑  收藏  举报