您好,登錄后才能下訂單哦!
一、HttpBasic模式的應(yīng)用場景
HttpBasic登錄驗證模式是Spring Security實現(xiàn)登錄驗證最簡單的一種方式,也可以說是最簡陋的一種方式。它的目的并不是保障登錄驗證的絕對安全,而是提供一種“防君子不防小人”的登錄驗證。
就好像是我小時候?qū)懭沼?,都買一個帶小鎖頭的日記本,實際上這個小鎖頭有什么用呢?如果真正想看的人用一根釘子都能撬開。它的作用就是:某天你的父母想偷看你的日記,拿出來一看還帶把鎖,那就算了吧,怪麻煩的。
舉一個我使用HttpBasic模式的進行登錄驗證的例子:我曾經(jīng)在一個公司擔(dān)任部門經(jīng)理期間,開發(fā)了一套用于統(tǒng)計效率、分享知識、生成代碼、導(dǎo)出報表的Http接口。純粹是為了工作中提高效率,同時我又有一點點小私心,畢竟各部之間是有競爭的,所以我給這套接口加上了HttpBasic驗證。公司里隨便一個技術(shù)人員,最多只要給上一兩個小時,就可以把這個驗證破解了。說白了,這個工具的數(shù)據(jù)不那么重要,加一道鎖的目的就是不讓它成為公開數(shù)據(jù)。如果有心人破解了,真想看看這里面的數(shù)據(jù),其實也無妨。這就是HttpBasic模式的典型應(yīng)用場景。
二、spring boot2.0整合Spring security
spring boot 2,x版本maven方式引入Spring security坐標(biāo)。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>
三、HttpBasic登錄認(rèn)證模式
如果使用的Spring Boot版本為1.X版本,依賴的Security 4.X版本,那么就無需任何配置,啟動項目訪問則會彈出默認(rèn)的httpbasic認(rèn)證.
我們現(xiàn)在使用的是spring boot2.0版本(依賴Security 5.X版本),HttpBasic不再是默認(rèn)的驗證模式,在spring security 5.x默認(rèn)的驗證模式已經(jīng)是表單模式。所以我們要使用Basic模式,需要自己調(diào)整一下。并且security.basic.enabled已經(jīng)過時了,所以我們需要自己去編碼實現(xiàn)。
@Configuration public class SecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.httpBasic()//開啟httpbasic認(rèn)證 .and() .authorizeRequests() .anyRequest() .authenticated();//所有請求都需要登錄認(rèn)證才能訪問 } }
啟動項目,在項目后臺有這樣的一串日志打印,冒號后面的就是默認(rèn)密碼。
Using generated security password: 0cc59a43-c2e7-4c21-a38c-0df8d1a6d624
我們可以通過瀏覽器進行登錄驗證,默認(rèn)的用戶名是user.(下面的登錄框不是我們開發(fā)的,是HttpBasic模式自帶的)
當(dāng)然我們也可以通過application.yml指定配置用戶名密碼
spring: security: user: name: admin password: admin
四、HttpBasic模式的原理說明
所以,HttpBasic模式真的是非常簡單又簡陋的驗證模式,Base64的加密算法是可逆的,你知道上面的原理,分分鐘就破解掉。我們完全可以使用PostMan工具,發(fā)送Http請求進行登錄驗證。
總結(jié)
以上所述是小編給大家介紹的Spring Security中的HttpBasic登錄驗證模式,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。