亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SpringSecurity rememberme功能實(shí)現(xiàn)過(guò)程解析

 更新時(shí)間:2020年03月03日 14:37:51   作者:天宇軒-王  
這篇文章主要介紹了SpringSecurity rememberme功能實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

記住我功能原理分析

還記得前面咱們分析認(rèn)證流程時(shí),提到的記住我功能嗎?

現(xiàn)在繼續(xù)跟蹤找到AbstractRememberMeServices對(duì)象的loginSuccess方法:

再點(diǎn)進(jìn)去上面if判斷中的rememberMeRequested方法,還在當(dāng)前類中:

如果上面方法返回true,就表示頁(yè)面勾選了記住我選項(xiàng)了。

繼續(xù)順著調(diào)用的方法找到PersistentTokenBasedRememberMeServices的onLoginSuccess方法:

注意name和value屬性的值不要寫錯(cuò)哦!

先測(cè)試一下,認(rèn)證通過(guò)后,關(guān)掉瀏覽器,再次打開頁(yè)面,發(fā)現(xiàn)還要認(rèn)證!為什么沒(méi)有起作用呢?
這是因?yàn)閞emember me功能使用的過(guò)濾器RememberMeAuthenticationFilter默認(rèn)是不開啟的!

開啟remember me過(guò)濾器

<security:remember-me token-validity-seconds="60"></security:remember-me>

說(shuō)明:RememberMeAuthenticationFilter中功能非常簡(jiǎn)單,會(huì)在打開瀏覽器時(shí),自動(dòng)判斷是否認(rèn)證,如果沒(méi)有則
調(diào)用autoLogin進(jìn)行自動(dòng)認(rèn)證。

remember me 安全性分析

記住我功能方便是大家看得見的,但是安全性卻令人擔(dān)憂。因?yàn)?Cookie畢竟是保存在客戶端的,很容易盜取,而且
cookie的值還與用戶名、密碼這些敏感數(shù)據(jù)相關(guān),雖然加密了,但是將敏感信息存在客戶端,還是不太安全。那么
這就要提醒喜歡使用此功能的,用完網(wǎng)站要及時(shí)手動(dòng)退出登錄,清空認(rèn)證信息。

此外,SpringSecurity還提供了remember me的另一種相對(duì)更安全的實(shí)現(xiàn)機(jī)制 :在客戶端的cookie中,僅保存一個(gè)
無(wú)意義的加密串(與用戶名、密碼等敏感數(shù)據(jù)無(wú)關(guān)),然后在db中保存該加密串-用戶信息的對(duì)應(yīng)關(guān)系,自動(dòng)登錄
時(shí),用cookie中的加密串,到db中驗(yàn)證,如果通過(guò),自動(dòng)登錄才算通過(guò)。

持久化remember me信息

創(chuàng)建一張表,注意這張表的名稱和字段都是固定的,不要修改。

 <security:remember-me token-validity-seconds="60"
               data-source-ref="dataSource"
     remember-me-parameter="remember-me"></security:remember-me>
CREATE TABLE `persistent_logins` (
`username` varchar(64) NOT NULL,
`series` varchar(64) NOT NULL,
`token` varchar(64) NOT NULL,
`last_used` timestamp NOT NULL,
PRIMARY KEY (`series`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java編程之基于SpringBoot框架實(shí)現(xiàn)掃碼登錄

    java編程之基于SpringBoot框架實(shí)現(xiàn)掃碼登錄

    本文將介紹基于SpringBoot + Vue + Android實(shí)現(xiàn)的掃碼登錄demo的總體思路,文中附含詳細(xì)示例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-09-09
  • Java中的CopyOnWriteArrayList原理詳解

    Java中的CopyOnWriteArrayList原理詳解

    這篇文章主要介紹了Java中的CopyOnWriteArrayList原理詳解,如源碼所示,CopyOnWriteArrayList和ArrayList一樣,都在內(nèi)部維護(hù)了一個(gè)數(shù)組,操作CopyOnWriteArrayList其實(shí)就是在操作內(nèi)部的數(shù)組,需要的朋友可以參考下
    2023-12-12
  • Java實(shí)現(xiàn)Excel文件轉(zhuǎn)PDF(無(wú)水印無(wú)限制)

    Java實(shí)現(xiàn)Excel文件轉(zhuǎn)PDF(無(wú)水印無(wú)限制)

    這篇文章主要為大家詳細(xì)介紹了如何利用Java語(yǔ)言實(shí)現(xiàn)Excel文件轉(zhuǎn)PDF的效果,并可以無(wú)水印、無(wú)限制。文中的示例代碼講解詳細(xì),需要的可以參考一下
    2022-06-06
  • SpringBoot項(xiàng)目@Async方法問(wèn)題解決方案

    SpringBoot項(xiàng)目@Async方法問(wèn)題解決方案

    這篇文章主要介紹了SpringBoot項(xiàng)目@Async方法問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • 深入淺析JDK8新特性之Lambda表達(dá)式

    深入淺析JDK8新特性之Lambda表達(dá)式

    Lambda表達(dá)式主要是替換了原有匿名內(nèi)部類的寫法,也就是簡(jiǎn)化了匿名內(nèi)部類的寫法。這篇文章主要介紹了JDK8新特性之Lambda表達(dá)式,非常不錯(cuò)感興趣的朋友參考下吧
    2016-10-10
  • eclipse中maven插件安裝教程

    eclipse中maven插件安裝教程

    這篇文章主要為大家詳細(xì)介紹了eclipse中maven插件安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Java的Lombok之@Builder使用總結(jié)

    Java的Lombok之@Builder使用總結(jié)

    這篇文章主要介紹了Java的Lombok之@Builder使用總結(jié),當(dāng)不使用@Builder注解到類上,創(chuàng)建T1的有參構(gòu)造函數(shù),入?yún)⒉粌H包括T1中所有的參數(shù),還包括T中所有的參數(shù),T2的屬性由T1在有參構(gòu)造函數(shù)中通過(guò)調(diào)用父類構(gòu)造器的方式賦初值,需要的朋友可以參考下
    2023-12-12
  • spring實(shí)例化javabean的三種方式分享

    spring實(shí)例化javabean的三種方式分享

    這篇文章介紹了spring實(shí)例化javabean的三種方式,有需要的朋友可以參考一下
    2013-10-10
  • Java中如何將?int[]?數(shù)組轉(zhuǎn)換為?ArrayList(list)

    Java中如何將?int[]?數(shù)組轉(zhuǎn)換為?ArrayList(list)

    這篇文章主要介紹了Java中將?int[]?數(shù)組?轉(zhuǎn)換為?List(ArrayList),本文通過(guò)示例代碼給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-12-12
  • JAVA中的函數(shù)接口示例詳解

    JAVA中的函數(shù)接口示例詳解

    創(chuàng)建一個(gè)自定義的Sayable接口,這是一個(gè)使用@FunctionalInterface注解的函數(shù)式接口,這篇文章主要介紹了JAVA中的函數(shù)接口,你都用過(guò)嗎,需要的朋友可以參考下
    2023-11-11

最新評(píng)論