spring?security需求分析與基礎環(huán)境準備教程
前言
Spring Security企業(yè)安全認證系列文章,本專欄內(nèi)容目前已經(jīng)比較系統(tǒng)了,核心內(nèi)容也相對完整,本系列文章會根據(jù)Spring Security社區(qū)的發(fā)展逐步的更新內(nèi)容。請大家多多關注腳本之家~
前文傳送門:
一、需求分析
- login.html登錄頁面,登錄頁面訪問不受限制
- 在登錄頁面登錄之后,進入index.html首頁(登錄驗證Authentication)
- 首頁可以看到syslog、sysuer、biz1、biz2四個頁面選項
- 我們希望syslog(日志管理)和sysuser(用戶管理)只有admin管理員可以訪問(權限管理Authorization)
- biz1、biz2普通的操作普通用戶登錄即可訪問(權限管理Authorization)
其中 login.html是html文件,其他文件是以.html為后綴的freemarker模板文件
我們先將以上頁面準備好,先不做任何訪問權限上的限制!以上需求我們將在后面章節(jié)實現(xiàn)
二、環(huán)境準備
- 起一個新的spring boot2.x 版本的web應用
- 集成lombok、mybatis、log4j等
- 集成一個前端模板,我這里使用的是freemarker。你可以根據(jù)自己需要整合jsp、thymeleaf等都可以。
為了讓課程盡量的干一點,因為這套課程主要是講security及web應用安全,所以不會花時間在spring boot整合開源軟件,及增刪改查怎么寫!如果不知道怎么做。可以參考:http://www.dbjr.com.cn/article/219845.htm 網(wǎng)上也有很多的資料。
如果你實在不愿意自己集成,下面的是我整合之后的結果,可以直接使用。該項目只用于項目初始化,不包含后面課程的源代碼。https://gitee.com/hanxt/boot-security-starter
注意login.html頁面的存放位置和其他文件的存放位置不一樣。public文件夾里面的html文件可以對外公開訪問
login.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>首頁</title> </head> <body> <h1>字母哥業(yè)務系統(tǒng)登錄</h1> <form action="/login" method="post"> <span>用戶名稱</span><input type="text" name="username" /> <span>用戶密碼</span><input type="password" name="password" /> <input type="submit" value="登陸"> </form> </body> </html>
index.html
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8" /> <title>字母哥業(yè)務管理系統(tǒng)</title> </head> <body> <h1>字母哥業(yè)務管理系統(tǒng)</h1> <a href="/syslog" rel="external nofollow" >日志管理</a> <a href="/sysuser" rel="external nofollow" >用戶管理</a> <a href="/biz1" rel="external nofollow" >具體業(yè)務一</a> <a href="/biz2" rel="external nofollow" >具體業(yè)務二</a> </body> </html>
BizpageController .java
@Controller public class BizpageController { // 登錄 @PostMapping("/login") public String index(String username,String password) { return "index"; //index.html } // 日志管理 @GetMapping("/syslog") public String showOrder() { return "syslog"; //syslog.html } // 用戶管理 @GetMapping("/sysuser") public String addOrder() { return "sysuser"; //sysuser.html } // 具體業(yè)務一 @GetMapping("/biz1") public String updateOrder() { return "biz1"; //biz1.html } // 具體業(yè)務二 @GetMapping("/biz2") public String deleteOrder() { return "biz2"; //biz2.html } }
syslog.html、sysuser.html、biz1.html、biz2.html內(nèi)容隨便寫點,能夠方便做內(nèi)容上的彼此區(qū)分即可。
以上就是spring security需求分析與基礎環(huán)境準備教程的詳細內(nèi)容,更多關于spring security需求分析環(huán)境準備的資料請關注腳本之家其它相關文章!
相關文章
利用Java如何獲取Mybatis動態(tài)生成的sql接口實現(xiàn)
MyBatis 的強大特性之一便是它的動態(tài)SQL,下面這篇文章主要給大家介紹了關于利用Java如何獲取Mybatis動態(tài)生成的sql接口實現(xiàn)的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-01-01SpringBoot項目使用mybatis-plus逆向自動生成全套代碼
在JavaWeb工程中,每一個SSM新項目或者說是SpringBoot項目也好,都少不了model、controller、service、dao等層次的構建。使用mybatis-plus逆向可以自動生成,感興趣的可以了解一下2021-09-09springboot?使用clickhouse實時大數(shù)據(jù)分析引擎(使用方式)
這篇文章主要介紹了springboot?使用clickhouse實時大數(shù)據(jù)分析引擎的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2022-02-02mybatis攔截器實現(xiàn)數(shù)據(jù)庫數(shù)據(jù)權限隔離方式
通過Mybatis攔截器,在執(zhí)行SQL前添加條件實現(xiàn)數(shù)據(jù)權限隔離,特別是對于存在用戶ID區(qū)分的表,攔截器會自動添加如user_id=#{userId}的條件,確保SQL在執(zhí)行時只能操作指定用戶的數(shù)據(jù),此方法主要應用于Mybatis的四個階段2024-11-11解決Elasticsearch因jdk版本問題啟動失敗的問題
這篇文章主要介紹了解決Elasticsearch因jdk版本問題啟動失敗的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07