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

spring boot security設(shè)置忽略地址不生效的解決

 更新時間:2021年07月17日 10:41:32   作者:編碼是個技術(shù)活  
這篇文章主要介紹了spring boot security設(shè)置忽略地址不生效的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

spring boot security設(shè)置忽略地址不生效

最近在試下微服務(wù)改造,出現(xiàn)這樣一個問題所有請求都經(jīng)過spring cloud gateway進(jìn)行認(rèn)證授權(quán)后再訪問后端數(shù)據(jù)方服務(wù),但有些需要合作機(jī)構(gòu)回調(diào),由于進(jìn)行了security認(rèn)證,最終的方案是對回調(diào)地址進(jìn)行忽略auth認(rèn)證。

最終security主要代碼如下:

@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
 @Override
 public void configure(WebSecurity web) throws Exception {
  web.ignoring().antMatchers("/v1/prNotifyBack");
 }
 @Override
 protected void configure(HttpSecurity http) throws Exception {
  /**表示所有的訪問都必須進(jìn)行認(rèn)證處理后才可以正常進(jìn)行*/
  http.httpBasic().and().authorizeRequests().anyRequest().fullyAuthenticated();
  /**所有的Rest服務(wù)一定要設(shè)置為無狀態(tài),以提升操作性能*/
  http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);
  http.csrf().disable();
 }
}

這個過程遇到了幾個問題:

1、繼承WebSecurityConfigurerAdapter

后我們重寫configure方法,這個方法需要注意:他有兩個不同的參數(shù)。

HttpSecurity 及WebSecurity 作用是不一樣的,WebSecurity 主要針對的全局的忽略規(guī)則,HttpSecurity主要是權(quán)限控制規(guī)則。

所以一開始用HttpSecurity是達(dá)不到忽略地址的目的。

 protected void configure(HttpSecurity http){.......}
 public void configure(WebSecurity web) {.........}

WebSecurity

全局請求忽略規(guī)則配置(比如說靜態(tài)文件,比如說注冊頁面)、全局HttpFirewall配置、是否debug配置、全局SecurityFilterChain配置、privilegeEvaluator、expressionHandler、securityInterceptor、

HttpSecurity

具體的權(quán)限控制規(guī)則配置。

2、忽略不生效問題

web.ignoring().antMatchers("/pr/v1/prNotifyBack");

如上代碼如果帶上/pr就不會生效,訪問依然會出現(xiàn)401錯誤。/pr是配置的項(xiàng)目路徑。但帶上項(xiàng)目路徑就不生效,這個問題很疑惑。

server:
port: 8089
servlet:
context-path: /pr

SpringBoot SpringSecurity, web.ignore失效

@Configuration
@EnableGlobalMethodSecurity(prePostEnabled=true)
public class CustomSecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and()
                .csrf().disable()
                .authorizeRequests()
                .antMatchers("/api/**").authenticated()
                .and()
                .addFilterBefore(new TokenFilter(), UsernamePasswordAuthenticationFilter.class);
    }
    @Override
    public void configure(WebSecurity web) throws Exception {
        web.ignoring()
                .antMatchers("/")
                .antMatchers("/swagger-ui.html")
                .antMatchers("/swagger-resources/**")
                .antMatchers("/webjars/springfox-swagger-ui/**")
                .antMatchers("/v2/api-docs/**");
    }
}

這是修改后正常工作的配置文件

之前使用@component注解, 然后使用@Resource注入進(jìn)來.

導(dǎo)致過濾器全局生效.

正常配置,應(yīng)該手動new, 而且過濾器類不能加@Component注解

具體原因,之后有空研究一下.

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 關(guān)于Java 中的 Lambda 表達(dá)式

    關(guān)于Java 中的 Lambda 表達(dá)式

    這篇文章主要介紹了關(guān)于Java 中的 Lambda 表達(dá)式,Lambda 表達(dá)式是 Java 涉足函數(shù)式編程的過程。它接受參數(shù)并將其應(yīng)用于表達(dá)式或代碼塊,下面一起進(jìn)入文章查看詳細(xì)內(nèi)容
    2021-11-11
  • Mybatis逆向工程時失敗問題及解決

    Mybatis逆向工程時失敗問題及解決

    這篇文章主要介紹了Mybatis逆向工程時失敗問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • SSM框架下實(shí)現(xiàn)登錄注冊的示例代碼

    SSM框架下實(shí)現(xiàn)登錄注冊的示例代碼

    這篇文章主要介紹了SSM框架下實(shí)現(xiàn)登錄注冊的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • 使用IDEA打jar包的詳細(xì)圖文教程

    使用IDEA打jar包的詳細(xì)圖文教程

    JAR文件是一種壓縮文件,與常見的ZIP壓縮文件兼容,被稱為JAR包,下面這篇文章主要給大家介紹了關(guān)于使用IDEA打jar包的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • Java框架---Spring詳解

    Java框架---Spring詳解

    這篇文章主要介紹了Java的Spring框架并用其開始編寫第一個程序Hellow world的方法,Spring是Java的SSH三大web開發(fā)框架之一,需要的朋友可以參考下
    2021-09-09
  • Java靜態(tài)泛型使用方法實(shí)例解析

    Java靜態(tài)泛型使用方法實(shí)例解析

    這篇文章主要介紹了Java靜態(tài)泛型使用方法實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • Springboot設(shè)置默認(rèn)訪問路徑方法實(shí)現(xiàn)

    Springboot設(shè)置默認(rèn)訪問路徑方法實(shí)現(xiàn)

    這篇文章主要介紹了Springboot設(shè)置默認(rèn)訪問路徑方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Java9新特性中的模塊化詳解

    Java9新特性中的模塊化詳解

    今天介紹一個Java?9的功能,模塊化(Modular),這可能使Java有史以來最大的Feature,對Java9模塊化相關(guān)知識感興趣的朋友一起看看吧
    2022-03-03
  • SpringBoot配置線程池的實(shí)現(xiàn)示例

    SpringBoot配置線程池的實(shí)現(xiàn)示例

    本文主要介紹了SpringBoot配置線程池的實(shí)現(xiàn)示例,主要包括在Spring Boot中創(chuàng)建和配置線程池,包括設(shè)置線程池的大小、隊(duì)列容量、線程名稱等參數(shù),感興趣的可以了解一下
    2023-09-09
  • 排序算法圖解之Java歸并排序的實(shí)現(xiàn)

    排序算法圖解之Java歸并排序的實(shí)現(xiàn)

    歸并排序是建立在歸并操作上的一種有效,穩(wěn)定的排序算法,該算法是采用分治法(Divide?and?Conquer)的一個非常典型的應(yīng)用。本文主要介紹了歸并排序的實(shí)現(xiàn),需要的可以參考一下
    2022-11-11

最新評論

尚志市| 伊吾县| 竹溪县| 广南县| 怀仁县| 武宣县| 博罗县| 江门市| 新民市| 修文县| 德昌县| 湟源县| 舞钢市| 兴义市| 邯郸市| 昭苏县| 海城市| 原阳县| 资兴市| 丹凤县| 青田县| 马关县| 平罗县| 巴马| 嘉兴市| 揭阳市| 东乡| 木里| 侯马市| 乌兰察布市| 民丰县| 高碑店市| 周口市| 龙山县| 沂源县| 安龙县| 万州区| 陆良县| 苍山县| 洪湖市| 进贤县|