摘要:前言大致簡介項(xiàng)目主要逐步迭代講解服務(wù)開發(fā),通過實(shí)際的案例開發(fā)來講解,項(xiàng)目注解詳細(xì)適合作為教程案例,同時(shí)對(duì)代碼的演進(jìn)還有重構(gòu)也會(huì)有對(duì)應(yīng)的推文講解什么是登錄與賬戶安全大多數(shù)初級(jí)的程序員可能理解的比較簡單,即普通的表單登錄,數(shù)據(jù)查詢等等,但是真
GitHub
UncleCatMySelf/myself-security
前言大致簡介項(xiàng)目主要逐步迭代講解Spring Security + Spring Social + Spring Security OAuth + REST服務(wù)開發(fā),通過實(shí)際的案例開發(fā)來講解,項(xiàng)目注解詳細(xì)適合作為教程案例,同時(shí)對(duì)代碼的演進(jìn)還有重構(gòu)也會(huì)有對(duì)應(yīng)的推文講解!
什么是登錄與賬戶安全!?
大多數(shù)初級(jí)的程序員可能理解的比較簡單,即普通的表單登錄,數(shù)據(jù)查詢等等,但是真正的企業(yè)登錄權(quán)限系統(tǒng)是如何的呢?現(xiàn)在大多數(shù)主流的權(quán)限系統(tǒng)一般都是使用Spring Security了,而我們的主題也是它,讓我們來深入了解這個(gè)權(quán)限框架吧!
項(xiàng)目搭建首先是項(xiàng)目的目錄,項(xiàng)目采用Maven多模塊模式開發(fā)。
1、Myself-security:主模塊(pom) 2、Myself-security-core:核心業(yè)務(wù)邏輯(jar) 3、Myself-security-browser:瀏覽器安全特定代碼(jar) 4、Myself-security-app:app相關(guān)特定代碼(jar) 5、Myself-security-demo:樣例程序(jar)相關(guān)Pom文件
讓我們來了解項(xiàng)目的主模塊的pom文件,這個(gè)的packaging要選擇為pom形式,我們選擇引入Spring IO來控制版本,還有配置Maven插件,具體如下
4.0.0 com.myself.security myself-security 1.0-SNAPSHOT pom 1.0-SNAPSHOT io.spring.platform platform-bom Cairo-SR4 pom import org.springframework.cloud spring-cloud-dependencies Finchley.SR1 pom import org.apache.maven.plugins maven-compiler-plugin 3.7.0 1.8 UTF-8 ../myselfsecuritycore ../myselfsecuritydemo ../myselfsecuritybrowser ../myselfsecurityapp
接下來是core的核心組件,這一塊的代碼較多,我中間部分就省略了,具體可以去GitHub查看
myself-security com.myself.security 1.0-SNAPSHOT ../myselfsecurity 4.0.0 myself-security-core org.springframework.cloud spring-cloud-starter-oauth2 ... ...
而app模塊是針對(duì)App的權(quán)限,這一塊只要引入core組件即可
myself-security com.myself.security 1.0-SNAPSHOT ../myselfsecurity 4.0.0 myself-security-app com.myself.security myself-security-core ${myself.security.version}
對(duì)于browser瀏覽器模塊,則需要加Session集群管理,由于app是使用token,而瀏覽器則是session
myself-security com.myself.security 1.0-SNAPSHOT ../myselfsecurity 4.0.0 myself-security-browser com.myself.security myself-security-core ${myself.security.version} org.springframework.session spring-session 1.3.3.RELEASE
demo組件是我們的代碼測(cè)試區(qū),還有功能實(shí)現(xiàn)測(cè)試,我們暫時(shí)先引用browser模塊。
啟動(dòng)類myself-security com.myself.security 1.0-SNAPSHOT ../myselfsecurity 4.0.0 myself-security-demo com.myself.security myself-security-browser ${myself.security.version} org.springframework.boot spring-boot-starter-test org.springframework.boot spring-boot-maven-plugin 2.0.5.RELEASE repackage demo
接下來我們要編寫啟動(dòng)類,我使用了Swagger插件,還有初始化時(shí)我們先移除Security的登錄驗(yàn)證,當(dāng)然yml配置文件也要先關(guān)了Session管理
package com.myself; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.swagger2.annotations.EnableSwagger2; /** * @author MySelf * @create 2018/9/15 * @desc Demo SpringBoot 啟動(dòng)類 **/ @SpringBootApplication @RestController @EnableSwagger2 @EnableAutoConfiguration(exclude = { org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration.class }) public class DemoApplication { /** * 啟動(dòng)類 * @param args {@link String} */ public static void main(String[] args) { SpringApplication.run(DemoApplication.class,args); } /** * 初始化創(chuàng)建接口服務(wù) * @return {@link String} */ @GetMapping("/hello") public String hello(){ return "Hello Spring Security"; } }結(jié)尾
好了,運(yùn)行項(xiàng)目,我們就可以看到初始化成功的項(xiàng)目啦!
如果本文對(duì)你有幫助,歡迎關(guān)注個(gè)人技術(shù)公眾號(hào),謝謝。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/77119.html
摘要:前言大致簡介項(xiàng)目主要逐步迭代講解服務(wù)開發(fā),通過實(shí)際的案例開發(fā)來講解,項(xiàng)目注解詳細(xì)適合作為教程案例,同時(shí)對(duì)代碼的演進(jìn)還有重構(gòu)也會(huì)有對(duì)應(yīng)的推文講解什么是登錄與賬戶安全大多數(shù)初級(jí)的程序員可能理解的比較簡單,即普通的表單登錄,數(shù)據(jù)查詢等等,但是真 GitHub UncleCatMySelf/myself-security 前言 大致簡介項(xiàng)目主要逐步迭代講解Spring Security + S...
摘要:框架具有輕便,開源的優(yōu)點(diǎn),所以本譯見構(gòu)建用戶管理微服務(wù)五使用令牌和來實(shí)現(xiàn)身份驗(yàn)證往期譯見系列文章在賬號(hào)分享中持續(xù)連載,敬請(qǐng)查看在往期譯見系列的文章中,我們已經(jīng)建立了業(yè)務(wù)邏輯數(shù)據(jù)訪問層和前端控制器但是忽略了對(duì)身份進(jìn)行驗(yàn)證。 重拾后端之Spring Boot(四):使用JWT和Spring Security保護(hù)REST API 重拾后端之Spring Boot(一):REST API的搭建...
時(shí)間:2017年09月03日星期日說明:本文部分內(nèi)容均來自慕課網(wǎng)。@慕課網(wǎng):http://www.imooc.com 教學(xué)源碼:https://github.com/zccodere/s...學(xué)習(xí)源碼:https://github.com/zccodere/s... 第一章:課程介紹 1-1 面向切面 課程章節(jié) 概覽 AOP使用 AOP原理 AOP開源運(yùn)用 課程實(shí)戰(zhàn) 課程總結(jié) 面向切面編程是一種...
摘要:認(rèn)證鑒權(quán)與權(quán)限控制在微服務(wù)架構(gòu)中的設(shè)計(jì)與實(shí)現(xiàn)一引言本文系認(rèn)證鑒權(quán)與權(quán)限控制在微服務(wù)架構(gòu)中的設(shè)計(jì)與實(shí)現(xiàn)系列的第一篇,本系列預(yù)計(jì)四篇文章講解微服務(wù)下的認(rèn)證鑒權(quán)與權(quán)限控制的實(shí)現(xiàn)。 java 開源項(xiàng)目收集 平時(shí)收藏的 java 項(xiàng)目和工具 某小公司RESTful、共用接口、前后端分離、接口約定的實(shí)踐 隨著互聯(lián)網(wǎng)高速發(fā)展,公司對(duì)項(xiàng)目開發(fā)周期不斷縮短,我們面對(duì)各種需求,使用原有對(duì)接方式,各端已經(jīng)很...
閱讀 2609·2021-09-28 09:35
閱讀 3262·2021-09-03 10:28
閱讀 2905·2019-08-30 15:43
閱讀 1477·2019-08-30 14:04
閱讀 1801·2019-08-29 17:02
閱讀 1812·2019-08-26 13:59
閱讀 692·2019-08-26 11:51
閱讀 3251·2019-08-23 17:16