Cas单点登录系统自定义Credentials/拓展UsernamePasswordCredentials

来源:互联网 发布:黎明杀机低配优化补丁 编辑:程序博客网 时间:2024/05/22 17:43

关于Cas单点登录系统,网上相关文章遍地都是,不再进行介绍。Cas系统默认使用UsernamePasswordCredentials来进行认证数据存储,其中只包括用户名密码两部分,如果需要从登录页面的表单中提交其他数据,需要修改部分配置。

首先自己编写Java类拓展UsernamePasswordCredentials,假设拓展类为net.cow.cas.MyUsernamePasswordCredentials,其中包含和登录页面表单中其它提交数据对应的属性。

打开WEB-INF/cas-servlet.xml,找到authenticateViaFormAction的bean,加上p:formObjectName="credentials"p:formObjectClass="net.cow.cas.MyUsernamePasswordCredentials"两个属性,其中formObjectName必须是credentials且必须设置,formObjectClass为拓展的Credentials类名。

这样设置之后,在authenticationHandler和credentialsToPrincipalResolver中获得的credentials就是自定义类型的Credentials了。

cas官方wiki中https://wiki.jasig.org/pages/viewpage.action?pageId=13570204有相关介绍。

原创粉丝点击