cas返回mysql数据_CAS返回用户的基本资料[基于数据库]

9月 25, 2016 |

Nix.Huang

相关的视频教程观看地址:单点登录系列视频教程

CAS3.0协议,添加了一个可选的cas:attributes 属性,用来返回用户的基本资料

设置步骤如下:

1、修改deployerConfigContext.xml

注释掉原来的attributeRepository bean, 声明SingleRowJdbcPersonAttributeDao的实例,官方默认的基于数据库的属性获取有两个实现类MultiRowJdbcPersonAttributeDao和SingleRowJdbcPersonAttributeDao,在此我们使用基于单行版本。

2、修改服务管理文件

本示例基于json管理服务注册

所以要在serviceName-serviceid.json文件中声明正确的attributeReleasePolicy 策略,

"attributeReleasePolicy" : {

"@class" : "org.jasig.cas.services.ReturnAllAttributeReleasePolicy"

},

ReturnAllAttributeReleasePolicy表示返回所有的属性。官方文档还有别的属性释放策略,参考附录的连接

3、客户端需要支持CAS协议3.0版本

在web.xml中声明org.jasig.cas.client.validation.Cas30ProxyReceivingTicketValidationFilter 而不是org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter。

在需要用户基本资料的地方,使用如下的代码片段获取基本资料

AttributePrincipal principal = (AttributePrincipal)request.getUserPrincipal();

String email = (String)principal.getAttributes().get("email");

request是HttpServletRequest对象

参考信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值