SpringSecurity+Mysql數(shù)據(jù)庫(kù)實(shí)現(xiàn)用戶安全登錄認(rèn)證的實(shí)踐
Spring Security 是一個(gè)提供身份認(rèn)證、授權(quán)和防范常見攻擊的安全權(quán)限框架。無論是對(duì)命令式,還是響應(yīng)式web應(yīng)用程序都完美支持,現(xiàn)在主要用作保護(hù)基于 Spring 框架的應(yīng)用程序的事實(shí)標(biāo)準(zhǔn)。相對(duì)于shiro來說,SpringSecurity功能更加復(fù)雜而且更加強(qiáng)大
1.SpringBoot整合security
pom中加入依賴
<!--security-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<!--lomback-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.10</version>
</dependency>
<!--thymeleaf模板引擎-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
<version>2.6.5</version>
</dependency>
<!--mysql驅(qū)動(dòng)包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--mybatis-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
<!--阿里驅(qū)動(dòng)類-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>當(dāng)引入security依賴后,啟動(dòng)項(xiàng)目再訪問時(shí),會(huì)被要求登錄,我們賬號(hào)輸入user,密碼在控制臺(tái)


成功登錄。
登錄成功后我們可以訪問Controller里的資源

在SecurityConfig里配置攔截路徑,以及放行路徑,


在Config里注入BCryptPasswordEncoder,Hbase密碼加密類

接下來實(shí)現(xiàn)LoadUserByUserName,它會(huì)根據(jù)name去數(shù)據(jù)庫(kù)查找比對(duì)密碼,成功則放行,失敗攔截

注意數(shù)據(jù)表里的password字段要經(jīng)過BCrt類密碼加密,才能比對(duì)成功

最后測(cè)試,打開瀏覽器輸入url地址,會(huì)跳轉(zhuǎn)到登錄頁(yè)面進(jìn)行登錄,輸入賬號(hào),密碼,成功登陸

如果賬號(hào)密碼比對(duì)失敗或者斷網(wǎng),會(huì)跳轉(zhuǎn)到對(duì)應(yīng)的error頁(yè)面或者提示

到此這篇關(guān)于SpringSecurity+Mysql數(shù)據(jù)庫(kù)實(shí)現(xiàn)用戶安全登錄認(rèn)證的實(shí)踐的文章就介紹到這了,更多相關(guān)SpringSecurity Mysql登錄認(rèn)證內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot整合SpringSecurity和JWT的示例
- SpringSecurity構(gòu)建基于JWT的登錄認(rèn)證實(shí)現(xiàn)
- Java SpringSecurity+JWT實(shí)現(xiàn)登錄認(rèn)證
- SpringSecurity實(shí)現(xiàn)前后端分離登錄token認(rèn)證詳解
- SpringSecurity+jwt+redis基于數(shù)據(jù)庫(kù)登錄認(rèn)證的實(shí)現(xiàn)
- SpringSecurity?默認(rèn)登錄認(rèn)證的實(shí)現(xiàn)原理解析
- Springboot整合SpringSecurity實(shí)現(xiàn)登錄認(rèn)證和鑒權(quán)全過程
- springsecurity實(shí)現(xiàn)用戶登錄認(rèn)證快速使用示例代碼(前后端分離項(xiàng)目)
- SpringSecurity 自定義認(rèn)證登錄的項(xiàng)目實(shí)踐
相關(guān)文章
Java設(shè)計(jì)模式之單態(tài)模式(Singleton模式)介紹
這篇文章主要介紹了Java設(shè)計(jì)模式之單態(tài)模式(Singleton模式)介紹,本文講解了如何使用單例模式、使用單例模式注意事項(xiàng)等內(nèi)容,需要的朋友可以參考下2015-03-03
java?-jar啟動(dòng)原理詳解(附實(shí)操驗(yàn)證和注意事項(xiàng))
java?-jar是Java中運(yùn)行可執(zhí)行JAR包(Executable?JAR)的核心命令,其底層依托JVM類加載機(jī)制、JAR包規(guī)范和程序入口約定實(shí)現(xiàn),這篇文章主要介紹了java?-jar啟動(dòng)原理的相關(guān)資料,需要的朋友可以參考下2026-02-02
關(guān)于Java中的dozer對(duì)象轉(zhuǎn)換問題
Dozer是Java?Bean到Java?Bean映射器,它以遞歸方式將數(shù)據(jù)從一個(gè)對(duì)象復(fù)制到另一個(gè)對(duì)象,這篇文章主要介紹了Java中的dozer對(duì)象轉(zhuǎn)換的操作方法,需要的朋友可以參考下2022-08-08
Spring?@bean和@component注解區(qū)別
本文主要介紹了Spring?@bean和@component注解區(qū)別,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
MyBatis多對(duì)多一對(duì)多關(guān)系查詢嵌套處理
這篇文章主要為大家介紹了MyBatis多對(duì)多一對(duì)多關(guān)系查詢嵌套處理示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10
Java實(shí)戰(zhàn)玩具商城的前臺(tái)與后臺(tái)實(shí)現(xiàn)流程
讀萬卷書不如行萬里路,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+JSP+SSM+Springboot+Jsp+maven+Mysql實(shí)現(xiàn)一個(gè)玩具商城系統(tǒng),大家可以在過程中查缺補(bǔ)漏,提升水平2022-01-01

