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

SpringBoot中給指定接口加上權(quán)限校驗的實現(xiàn)

 更新時間:2024年12月24日 11:26:21   作者:weixin_47543135  
本文介紹了使用SpringSecurity為接口添加權(quán)限校驗,以防止外部訪問并確保安全性,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

問題

給指定接口加上權(quán)限校驗,目的是防止外部訪問,保證安全性。

解決

1、添加 Spring Security 依賴

在相應(yīng) pom 文件中加入下列依賴。

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

2、配置 Spring Security

創(chuàng)建一個配置類來配置 Spring Security,使用 SecurityFilterChain 來配置安全規(guī)則。

@Configuration
@EnableWebSecurity
public class SecurityConfig {

    @Bean
    public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
        http
                // 禁用 CSRF 保護(hù)
                .csrf().disable()
                .authorizeRequests(authorize -> authorize
                        // 僅允許具有 USER 角色的用戶訪問 /dpp/craw 及其子路徑
                        .antMatchers("/dpp/craw/**").hasRole("USER")
                        // 其他請求無需認(rèn)證
                        .anyRequest().permitAll()
                )
                // 使用 HTTP Basic 認(rèn)證
                .httpBasic();
        return http.build();
    }

    @Bean
    public UserDetailsService userDetailsService() {
        UserDetails user = User.withUsername("user")
                // 確保這里的密碼是經(jīng)過編碼的
                .password(passwordEncoder().encode("password"))
                .roles("USER")
                .build();
        return new InMemoryUserDetailsManager(user);
    }

    @Bean
    public PasswordEncoder passwordEncoder() {
        return new BCryptPasswordEncoder();
    }
}

3、在接口處加上權(quán)限校驗關(guān)鍵字

4、接口測試

此時訪問該接口需要在請求頭上加上認(rèn)證信息,上述接口的認(rèn)證信息是 user:password 的Base64編碼后的字符串

在請求頭加上認(rèn)證參數(shù)則訪問成功

到此這篇關(guān)于SpringBoot中給指定接口加上權(quán)限校驗的實現(xiàn)的文章就介紹到這了,更多相關(guān)SpringBoot指定接口加權(quán)限校驗內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 簡單了解synchronized和lock的區(qū)別

    簡單了解synchronized和lock的區(qū)別

    這篇文章主要介紹了簡單了解synchronized和lock的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • Java可重入鎖的實現(xiàn)示例

    Java可重入鎖的實現(xiàn)示例

    在java中,可重入鎖分為兩種,即synchronized鎖以及ReentrantLock及其實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • 詳解mybatis.generator配上最新的mysql 8.0.11的一些坑

    詳解mybatis.generator配上最新的mysql 8.0.11的一些坑

    這篇文章主要介紹了詳解mybatis.generator配上最新的mysql 8.0.11的一些坑,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-10-10
  • Spring Data JPA 設(shè)置字段默認(rèn)值方式

    Spring Data JPA 設(shè)置字段默認(rèn)值方式

    這篇文章主要介紹了Spring Data JPA設(shè)置字段默認(rèn)值方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • springboot集成CAS實現(xiàn)單點登錄的示例代碼

    springboot集成CAS實現(xiàn)單點登錄的示例代碼

    這篇文章主要介紹了springboot集成CAS實現(xiàn)單點登錄的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Mybatis中動態(tài)SQL,if,where,foreach的使用教程詳解

    Mybatis中動態(tài)SQL,if,where,foreach的使用教程詳解

    MyBatis的動態(tài)SQL是基于OGNL表達(dá)式的,它可以幫助我們方便的在SQL語句中實現(xiàn)某些邏輯。這篇文章主要介紹了Mybatis中動態(tài)SQL,if,where,foreach的使用教程,需要的朋友可以參考下
    2017-11-11
  • mybatis多個plugins的執(zhí)行順序解析

    mybatis多個plugins的執(zhí)行順序解析

    這篇文章主要介紹了mybatis多個plugins的執(zhí)行順序解析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 深度理解Java訪問修飾符

    深度理解Java訪問修飾符

    今天帶大家學(xué)習(xí)的是Java的相關(guān)知識,文章圍繞著Java訪問修飾符展開,有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Java實現(xiàn)BP神經(jīng)網(wǎng)絡(luò)MNIST手寫數(shù)字識別的示例詳解

    Java實現(xiàn)BP神經(jīng)網(wǎng)絡(luò)MNIST手寫數(shù)字識別的示例詳解

    這篇文章主要為大家詳細(xì)介紹了Java實現(xiàn)BP神經(jīng)網(wǎng)絡(luò)MNIST手寫數(shù)字識別的相關(guān)方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下
    2023-01-01
  • java線程封閉之棧封閉和ThreadLocal

    java線程封閉之棧封閉和ThreadLocal

    這篇文章主要介紹了java線程封閉之棧封閉和ThreadLocal,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10

最新評論

合水县| 台前县| 淅川县| 兴化市| 喀什市| 马龙县| 额敏县| 华安县| 岢岚县| 富蕴县| 漳州市| 凌源市| 泸西县| 凤庆县| 深圳市| 菏泽市| 东城区| 和硕县| 江门市| 吉首市| 嘉义市| 天全县| 秦安县| 普洱| 新乡市| 芒康县| 抚顺县| 本溪| 周口市| 冀州市| 衡山县| 眉山市| 综艺| 马边| 永康市| 周宁县| 阿图什市| 景泰县| 苍溪县| 霍邱县| 浮梁县|