最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Spring?Security搭建極簡的安全網(wǎng)站教程

 更新時(shí)間:2023年06月25日 11:12:28   作者:品品下午茶  
這篇文章主要為大家介紹了使用Spring?Security搭建極簡的安全網(wǎng)站教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

Spring Security 簡介

Spring Security 項(xiàng)目是一個(gè)安全框架,提供了認(rèn)證,授權(quán)和常見的網(wǎng)絡(luò)攻擊保護(hù)功能。在基于 Spring 開發(fā)的應(yīng)用中,Spring Security 是一個(gè)被廣泛應(yīng)用的安全框架,成為了實(shí)際的標(biāo)準(zhǔn)。與所有 Spring 項(xiàng)目類似,Spring Security 易于擴(kuò)展,滿足定制要求。主要特點(diǎn)如下:

  • 對認(rèn)證和授權(quán)的全面、可擴(kuò)展的支持
  • 防范會(huì)話固定攻擊、點(diǎn)擊劫持攻擊和跨站點(diǎn)偽造攻擊等風(fēng)險(xiǎn)
  • Servlet API 集成
  • Spring Web MVC 集成
  • 還有更多…

本文將搭建一個(gè)極簡的項(xiàng)目,初步體驗(yàn)一下 Spring Security.

創(chuàng)建項(xiàng)目

開發(fā)工具使用 IntelliJ IDEA,也可以選擇自己喜歡的集成開發(fā)工具。

首先,打開新建項(xiàng)目向?qū)Вx擇 Spring Initializr 向?qū)А?br />然后,填寫項(xiàng)目的配置信息。
接著,選擇 Spring WebSpring Security 兩個(gè)依賴模塊。

Spring Security 依賴

最后,選擇項(xiàng)目的保存路徑,完成項(xiàng)目創(chuàng)建。

安全配置

完成項(xiàng)目創(chuàng)建后,在 pom.xml 中,會(huì)出現(xiàn)下面兩個(gè)依賴配置,分別對應(yīng) Spring SecuritySpring Web.

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

首次運(yùn)行項(xiàng)目

直接運(yùn)行上面創(chuàng)建的項(xiàng)目,訪問項(xiàng)目首頁:http://localhost:8080/. 你會(huì)發(fā)現(xiàn),出現(xiàn)的不是首頁,而是一個(gè)登錄頁面(雖然樣子有點(diǎn)丑)。

Spring Security 默認(rèn)登錄頁面

這就說明了一個(gè)問題。雖然我們還沒有寫一行代碼,但是,首頁的 URL 已經(jīng)被 Spring Security 保護(hù)起來了,需要登錄才能訪問。

那么,如何登錄呢?Spring Security 默認(rèn)為我們創(chuàng)建了一個(gè)用戶:user。該用戶的登錄口令需要從控制臺(tái)輸出查詢:

Using generated security password: 0d243837-c61c-4717-b30a-9f6ff783b69e

登錄成功后,出現(xiàn)下面的頁面。

未配置首頁

因?yàn)槲覀儧]有配置首頁的 URL 路徑,所以首頁顯示有問題。但是,用戶登錄已經(jīng)成功了,起到了資源保護(hù)作用。

添加控制器

接下來,我們添加一個(gè)控制器,讓首頁能夠正常顯示。

@RestController
public class HomeController {
  @GetMapping("/")
  public String home() {
    return "Welcome to Learn Spring Security.";
  }
}

再次運(yùn)行項(xiàng)目

重新啟動(dòng)運(yùn)行項(xiàng)目,訪問首頁。再次登錄成功后,首頁正常顯示。

已配置首頁

注意:每次啟動(dòng)項(xiàng)目,產(chǎn)生的隨機(jī)登錄口令都不相同。因此,重啟項(xiàng)目后,需要重新拷貝控制臺(tái)中輸出的登錄口令。

源代碼 Github: https://github.com/nilpoint/spring-security-sample

小結(jié)

本文創(chuàng)建了一個(gè)基本的 Web 訪問安全控制項(xiàng)目,了解了 Spring Security 對資源保護(hù) 的一些默認(rèn)配置行為。下一篇文章中,我們就對這些默認(rèn)行為做進(jìn)一步研究,更多關(guān)于Spring Security搭建網(wǎng)站的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • MyBatis查詢、新增、更新與刪除操作指南

    MyBatis查詢、新增、更新與刪除操作指南

    這篇文章主要給大家介紹了關(guān)于MyBatis查詢、新增、更新與刪除操作的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用MyBatis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • java批量導(dǎo)入Excel數(shù)據(jù)超詳細(xì)實(shí)例

    java批量導(dǎo)入Excel數(shù)據(jù)超詳細(xì)實(shí)例

    這篇文章主要給大家介紹了關(guān)于java批量導(dǎo)入Excel數(shù)據(jù)的相關(guān)資料,EXCEL導(dǎo)入就是文件導(dǎo)入,操作代碼是一樣的,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-08-08
  • 零基礎(chǔ)搭建boot+MybatisPlus的詳細(xì)教程

    零基礎(chǔ)搭建boot+MybatisPlus的詳細(xì)教程

    這篇文章主要介紹了零基礎(chǔ)搭建boot+MybatisPlus,首先需要?jiǎng)?chuàng)建數(shù)據(jù)庫表和創(chuàng)建boot項(xiàng)目使用mybatisplus操作數(shù)據(jù)庫,本文通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-03-03
  • win10下定時(shí)運(yùn)行與開機(jī)自啟動(dòng)jar包的方法記錄

    win10下定時(shí)運(yùn)行與開機(jī)自啟動(dòng)jar包的方法記錄

    這篇文章主要給大家介紹了關(guān)于win10下定時(shí)運(yùn)行與開機(jī)自啟動(dòng)jar包的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 使用@slf4j找不到符號(hào)log的問題及解決

    使用@slf4j找不到符號(hào)log的問題及解決

    這篇文章主要介紹了使用@slf4j找不到符號(hào)log的問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Java利用棧實(shí)現(xiàn)簡易計(jì)算器功能

    Java利用棧實(shí)現(xiàn)簡易計(jì)算器功能

    這篇文章主要為大家詳細(xì)介紹了Java利用棧實(shí)現(xiàn)簡易計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Java?Spring?事件監(jiān)聽詳情解析

    Java?Spring?事件監(jiān)聽詳情解析

    這篇文章主要介紹了Java?Spring?事件監(jiān)聽詳情解析,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-07-07
  • Java高級(jí)開發(fā)高頻面試題完整版(由淺入深&高薪必背)

    Java高級(jí)開發(fā)高頻面試題完整版(由淺入深&高薪必背)

    Java是一個(gè)支持并發(fā)、基于類和面向?qū)ο蟮挠?jì)算機(jī)編程語言,這篇文章主要介紹了Java高級(jí)開發(fā)高頻面試題的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2026-03-03
  • SSH框架網(wǎng)上商城項(xiàng)目第26戰(zhàn)之訂單支付后發(fā)送短信提醒

    SSH框架網(wǎng)上商城項(xiàng)目第26戰(zhàn)之訂單支付后發(fā)送短信提醒

    這篇文章主要為大家詳細(xì)介紹了SSH框架網(wǎng)上商城項(xiàng)目第26戰(zhàn)之訂單支付后發(fā)送短信提醒,感興趣的小伙伴們可以參考一下
    2016-06-06
  • java中的日期和時(shí)間比較大小

    java中的日期和時(shí)間比較大小

    這篇文章主要介紹了java中的日期和時(shí)間比較大小,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10

最新評(píng)論

芒康县| 涡阳县| 新乐市| 德阳市| 咸宁市| 如东县| 崇仁县| 新乐市| 镇远县| 巴中市| 方山县| 增城市| 德钦县| 东丰县| 新昌县| 治县。| 崇信县| 铜梁县| 沁水县| 定远县| 鄄城县| 吴川市| 云梦县| 河南省| 通榆县| 泰来县| 承德县| 大竹县| 洛阳市| 屏东县| 凤山县| 塔河县| 怀柔区| 湖北省| 安义县| 丽水市| 勃利县| 永善县| 沁水县| 临桂县| 蓝田县|