当前位置: 首页 > news >正文

莱西网站建设公司企业网站建设方案

莱西网站建设,公司企业网站建设方案,外国人做的中国字网站,佛山市企业网站建设哪家好为什么80%的码农都做不了架构师?>>> Spring-Security3中的RememberMe功能的引入 RememberMe的功能实现有三种,这里只讲TokenBasedRememberMeServices的实现方案配置。 1. Authentication-Manager配置中加上erase-credentials"false&quo…

为什么80%的码农都做不了架构师?>>>   hot3.png

Spring-Security3中的RememberMe功能的引入

 

RememberMe的功能实现有三种,这里只讲TokenBasedRememberMeServices的实现方案配置。

 

1. Authentication-Manager配置中加上erase-credentials="false"这个属性配置。

不过阅读源码的时候发现如果没有也不要紧,只是会去读数据库,重新获得用户的密码而已。但从整个过程来看,好像也没并没有多读一次数据库。这部分代码的理顺就不包含在这里了。只要知道一点就好:这个配置不是必要的。

    <authentication-manager erase-credentials="false"

 

2. http中加上remember-me的配置

这个配置在logoutanonymous之前即可。

里面有几个属性配置:

user-service-ref指向authentication-manager里面provider当中配置的user-service-ref即可。用来获取用户的时候用。

token-validity-seconds:这个不用解释了吧,就是记住用户多长时间。我不知道怎样可以实现动态的记住,比如用户可选一天/一周/一月/一年等。单位是秒。

authentication-success-handler-ref:这个是认证通过之后的后续处理。如果不需要,这个可以不配置。我是需要的。

       <sec:remember-me

              user-service-ref="userService"

              token-validity-seconds="2592000"

              authentication-success-handler-ref="loginSuccessHandler"/>

 

3. 前端页面

前端页面的登录表单里面增加一个记住我的复选框即可。字段的值可以是true/on/1等多种表达确定使用该功能的方式。

<input name="_spring_security_remember_me" type="checkbox" value="true"/>

 

OK了。这样的配置已经完美的引入了RememberMe功能了。不过由于这个方案使用的是内存存储方式,TokenBasedRememberMeServices把已经登录的人员信息放在内存里,因此关机之后就不能用了。如果要使用持久化到数据库,需要另行配置,方式也差不多。

 

另外的实现方案包括配置data-source-reftoken-repository-ref两种,分别使用JdbcTokenRepositoryImplPersistentTokenBasedRememberServices来实现,并且这两个不能同时配置,都不用的话就用TokenBasedRememberMeServices来进行配置。这两种实现方案暂时没有研究。

 

---------------------------------------------

 

如果采用自己定义httpentry-point的话,即实现了自己的登录方式,比如添加了验证码的校验,这时候加入RememberMe的配置稍微有点不一样。

1. Authentication-Manager配置中加上erase-credentials="false"这个属性配置。

这个配置和前面的一样,可以不配置,照样工作很好。我也是参照别人的配置进行的,后来自己读源码发现不需要这个配置。

2. http中加上remember-me的配置

这个配置基本上不变,但需要添加一个属性,开放出所配置的RememberMeServices来。因为开放的这个Bean要被配置在别的地方

    <sec:remember-me

       services-alias="tokenBasedRememberMeServices"

       user-service-ref="userService"

       token-validity-seconds="2592000"

       authentication-success-handler-ref="loginSuccessHandler"/>

 

3. 自定义登录的AuthenticationProcessingFilter中添加对RememberMeServices的引用

对我来说,这个地方的代码应该是这个样子的:

    <bean id="captchaAuthenticationFilter"

       class="com.xx.CaptchaUsernamePasswordAuthenticationFilter">

       <property name="authenticationFailureHandler"

            ref="loginFailureHandler" />

       <property name="authenticationSuccessHandler"

            ref="loginSuccessHandler" />

       <property name="authenticationManager"

            ref="authenticationManager" />

       <property name="rememberMeServices"

            ref="tokenBasedRememberMeServices" />

       <property name="filterProcessesUrl"

            value="/workspace/dologin" />

       <property name="authCode" ref="authCode" />

    </bean>

 

4. 前端页面

前端页面跟前面是一样的。

 

OK了,就这样。


转载于:https://my.oschina.net/smzd/blog/278828

http://www.lbrq.cn/news/2443339.html

相关文章:

  • 历史价格查询百度seo关键词排名优化教程
  • 珠宝静态网站模板茂名seo顾问服务
  • 成都网上商城网站建设互联网推广招聘
  • 本网站建设广州网页推广公司
  • 网站设计方案及报价单湖南百度推广公司
  • 全球网站排名查询外贸软件
  • 算命网站建设开发沈阳seo按天计费
  • 织梦做的网站打包在dw修改友情链接的四个技巧
  • wordpress主题更改首页贵州seo技术查询
  • 网站标题写什么作用是什么网站推广优化价格
  • 网站建设合同封面网络营销是指
  • 个人网站免费模板seo外链友情链接
  • 学校网站模板html下载女孩子做运营是不是压力很大
  • 昆明定制化网站建设天津seo推广软件
  • 哈尔滨住房和城乡建设委员会网站百度app登录
  • 微信自己怎么弄小程序北京seo供应商
  • 酒泉如何做百度的网站经典软文广告
  • wordpress macos武汉seo网站优化排名
  • 如何建设一个商城网站搜索推广和信息流推广的区别
  • 做悬赏的网站网络营销专业是学什么的
  • 怎么建立一个网站csdn网络营销团队
  • 网站需要什么服务器seo企业培训班
  • 检测网站是用什么代码做的软件百度推广深圳分公司
  • 个人备案域名做企业网站广州网络推广定制
  • Wordpress自动回复评论昆明seo网站建设
  • 网站建设与熊掌号未来的关系百度游戏排行榜风云榜
  • 海原网站建设网站模板价格
  • 常州网站外包bing搜索引擎国内版
  • 信誉好的邯郸网站建设一份完整的营销策划方案
  • 电商公司网站大的网站建设公司
  • 逆向入门(43)程序逆向篇-tsrh-crackme
  • 磁悬浮轴承转子不平衡质量控制策略设计:原理、分析与智能实现
  • ARM SMMUv3控制器注册过程分析(八)
  • 7月26日星期六今日早报简报微语报早读
  • Kafka MQ 消费者应用场景
  • Qt 远程过程调用(RPC)实现方案