电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Springboot配置security basic path無效解決方案

瀏覽:4日期:2023-04-22 14:22:25

問題

springcloud 版本 為 Finchley.RELEASE

springboot 版本為 2.0.3.RELEASE

現在有需求,/swagger-ui.html 頁面需要添加登錄認證,但是本來的接口不需要登錄認證

升級springboot之前的做法是直接在application.yml 文件中添加以下配置:

security: basic: enabled: true # 啟用SpringSecurity的安全配置項 path: /swagger-ui.html user: name: aijianzi # 認證用戶名 password: course # 認證密碼 role: # 授權角色 - USER

升級后這種配置就出錯了,連編譯都出錯,如下圖:

解決過程

查找源代碼,找到如下:

來自:https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Migration-Guide

SecuritySpring Boot 2 greatly simplifies the default security configuration and makes adding custom security easy. Rather than having several security-related auto-configurations, Spring Boot now has a single behavior that backs off as soon as you add your own WebSecurityConfigurerAdapter.

You are affected if you were using any of the following properties:

security.basic.authorize-modesecurity.basic.enabledsecurity.basic.pathsecurity.basic.realmsecurity.enable-csrfsecurity.headers.cachesecurity.headers.content-security-policysecurity.headers.content-security-policy-modesecurity.headers.content-typesecurity.headers.framesecurity.headers.hstssecurity.headers.xsssecurity.ignoredsecurity.require-sslsecurity.sessions

翻譯:Spring Boot 2極大地簡化了默認的安全配置,并使添加定制安全性變得更加容易。Spring Boot并沒有使用幾個與安全相關的自動配置,而是在添加自己的WebSecurityConfigurerAdapter時就有了一個單獨的行為。如果您使用以下屬性,您將受到影響

再找到:https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-Security-2.0

Security Auto-configurationSpring Boot 2.0 does not provide separate auto-configuration for user-defined endpoints and actuator endpoints. When Spring Security is on the classpath, the auto-configuration secures all endpoints by default. It adds the @EnableWebSecurity annotation and relies on Spring Security’s content-negotiation strategy to determine whether to use httpBasic or formLogin. A user with a a default username and generated password is added, which can be used to login.

翻譯:Spring Boot 2.0沒有為用戶定義的端點和執行器端點提供單獨的自動配置。當Spring Security在類路徑上時,自動配置默認為所有端點。它添加了@EnableWebSecurity 注釋,并依賴于Spring Security的內容協商策略來決定是否使用httpBasic或formLogin。添加了一個默認用戶名和生成密碼的用戶,這可以用來登錄。

解決

對于不同的URL,安全性是不同的,關鍵在于重載WebSecurityConfigurerAdapter 類的configure(HttpSecurity) 方法。具體可以參考以上的兩個鏈接

我的完整實現如下:

1、pom.xml 中添加依賴:

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

2、application.yml 文件中配置登錄用戶名和密碼(如果只到這里,那么所有的請求都會被攔截)

spring: security: user: name: admin password: admin

3、添加自定義的配置類,注解@Configuration @EnableWebSecurity

import org.springframework.context.annotation.Configuration;import org.springframework.security.config.annotation.web.builders.HttpSecurity;import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;/** * @author jiashubing * @since 2018/7/16 */@Configuration@EnableWebSecuritypublic class ActuatorWebSecurityConfigurationAdapter extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.authorizeRequests()//普通的接口不需要校驗.antMatchers('/courseApi/**').permitAll()// swagger頁面需要添加登錄校驗.antMatchers('/swagger-ui.html').authenticated().and().formLogin(); }}

當然也可以配置成需要某個角色的用戶才能查看某些URL

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 聚合氯化铝_喷雾聚氯化铝_聚合氯化铝铁厂家_郑州亿升化工有限公司 | 通信天线厂家_室分八木天线_对数周期天线_天线加工厂_林创天线源头厂家 | 储能预警-储能消防系统-电池舱自动灭火装置-四川千页科技股份有限公司官网 | 插针变压器-家用电器变压器-工业空调变压器-CD型电抗器-余姚市中驰电器有限公司 | 科威信洗净科技,碳氢清洗机,超声波清洗机,真空碳氢清洗机 | 北京翻译公司-专业合同翻译-医学标书翻译收费标准-慕迪灵 | 钢化玻璃膜|手机钢化膜|钢化膜厂家|手机保护膜-【东莞市大象电子科技有限公司】 | 吸污车_吸粪车_抽粪车_电动三轮吸粪车_真空吸污车_高压清洗吸污车-远大汽车制造有限公司 | 广州工业氧气-工业氩气-工业氮气-二氧化碳-广州市番禺区得力气体经营部 | 锤式粉碎机,医药粉碎机,锥式粉碎机-无锡市迪麦森机械制造有限公司 | 本安接线盒-本安电路用接线盒-本安分线盒-矿用电话接线盒-JHH生产厂家-宁波龙亿电子科技有限公司 | 安徽净化板_合肥岩棉板厂家_玻镁板厂家_安徽科艺美洁净科技有限公司 | 合肥制氮机_合肥空压机厂家_安徽真空泵-凯圣精机 | 美侍宠物-专注宠物狗及宠物猫训练|喂养|医疗|繁育|品种|价格 | 知名电动蝶阀,电动球阀,气动蝶阀,气动球阀生产厂家|价格透明-【固菲阀门官网】 | 合肥宠物店装修_合肥宠物美容院装修_合肥宠物医院设计装修公司-安徽盛世和居装饰 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 混合反应量热仪-高温高压量热仪-微机差热分析仪DTA|凯璞百科 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 威廉希尔WilliamHill·足球(中国)体育官方网站 | 宁夏档案密集柜,智能密集柜,电动手摇密集柜-盛隆柜业宁夏档案密集柜厂家 | 网站优化公司_SEO优化_北京关键词百度快速排名-智恒博网络 | 车辆定位管理系统_汽车GPS系统_车载北斗系统 - 朗致物联 | 散热器厂家_暖气片_米德尔顿散热器| 四探针电阻率测试仪-振实密度仪-粉末流动性测定仪-宁波瑞柯微智能 | 扬子叉车厂家_升降平台_电动搬运车|堆高车-扬子仓储叉车官网 | 破碎机锤头_合金耐磨锤头_郑州宇耐机械工程技术有限公司 | 铝合金脚手架厂家-专注高空作业平台-深圳腾达安全科技 | 高光谱相机-近红外高光谱相机厂家-高光谱成像仪-SINESPEC 赛斯拜克 | 北京包装设计_标志设计公司_包装设计公司-北京思逸品牌设计 | 杭州货架订做_组合货架公司_货位式货架_贯通式_重型仓储_工厂货架_货架销售厂家_杭州永诚货架有限公司 | 打造全球沸石生态圈 - 国投盛世 锂电混合机-新能源混合机-正极材料混料机-高镍,三元材料混料机-负极,包覆混合机-贝尔专业混合混料搅拌机械系统设备厂家 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 隐形纱窗|防护纱窗|金刚网防盗纱窗|韦柏纱窗|上海青木装潢制品有限公司|纱窗国标起草单位 | 浴室柜-浴室镜厂家-YINAISI · 意大利设计师品牌 | 咿耐斯 |-浙江台州市丰源卫浴有限公司 | 恒温恒湿箱(药品/保健品/食品/半导体/细菌)-兰贝石(北京)科技有限公司 | 冷油器-冷油器换管改造-连云港灵动列管式冷油器生产厂家 | 蓝米云-专注于高性价比香港/美国VPS云服务器及海外公益型免费虚拟主机 | 短信营销平台_短信群发平台_106短信发送平台-河南路尚 | 深圳美安可自动化设备有限公司,喷码机,定制喷码机,二维码喷码机,深圳喷码机,纸箱喷码机,东莞喷码机 UV喷码机,日期喷码机,鸡蛋喷码机,管芯喷码机,管内壁喷码机,喷码机厂家 | 渗透仪-直剪仪-三轴仪|苏州昱创百科 |