Spring Boot的安全配置(一)|今日聚焦

2023-04-06 10:36:17 来源: 腾讯云

Spring Boot是一个非常流行的Java开发框架,提供了各种实用的功能和组件来快速构建应用程序。安全是任何Web应用程序开发的关键方面,因为它涉及到用户的身份验证和授权。Spring Boot提供了一些安全功能来保护Web应用程序免受恶意攻击,包括身份验证、授权、加密、防止跨站脚本攻击(XSS)和跨站请求伪造(CSRF)等。


【资料图】

本文将介绍Spring Boot的安全配置,包括身份验证和授权方面的详细文档和示例。

Spring Boot的安全配置

Spring Boot提供了许多安全功能,包括基于角色的访问控制、表单身份验证、HTTP Basic身份验证和OAuth 2.0身份验证等。这些功能可以通过Spring Security库来实现,它是Spring Boot的一部分,提供了许多可用的安全功能。

Spring Security的配置可以通过Java配置或XML配置来完成。Java配置更加灵活,可以提供更多的配置选项。XML配置则更加易于理解和管理。本文将使用Java配置来演示Spring Boot的安全配置。

配置基本身份验证

基本身份验证是一种最简单的身份验证方式,它使用用户名和密码来验证用户的身份。在Spring Boot中,可以使用HTTP Basic身份验证来实现基本身份验证。HTTP Basic身份验证使用Base64编码对用户名和密码进行编码,然后将它们放在HTTP请求的头部中。服务器端可以使用Spring Security的UserDetailsService接口来验证用户名和密码。

以下是使用Java配置实现基本身份验证的示例:

@Configuration@EnableWebSecuritypublic class SecurityConfig extends WebSecurityConfigurerAdapter {    @Autowired    public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {        auth            .inMemoryAuthentication()            .withUser("user").password("password").roles("USER");    }    @Override    protected void configure(HttpSecurity http) throws Exception {        http            .authorizeRequests()                .anyRequest().authenticated()                .and()            .httpBasic();    }}

在上面的示例中,SecurityConfig类继承自WebSecurityConfigurerAdapter类,并使用@EnableWebSecurity注解启用Spring Security。configureGlobal()方法使用AuthenticationManagerBuilder来配置用户的用户名、密码和角色。在这个示例中,只有一个用户"user",密码为"password",角色为"USER"。

configure()方法配置HTTP请求的安全性,使用authorizeRequests()来指定哪些请求需要授权,使用httpBasic()来启用HTTP Basic身份验证。anyRequest().authenticated()表示所有请求都需要进行身份验证。

配置表单身份验证

表单身份验证是一种常见的身份验证方式,它使用Web表单来收集用户的用户名和密码。在Spring Boot中,可以使用`表单身份验证需要配置的比基本身份验证更多。以下是使用Java配置实现表单身份验证的示例:

@Configuration@EnableWebSecuritypublic class SecurityConfig extends WebSecurityConfigurerAdapter {    @Autowired    private DataSource dataSource;    @Override    protected void configure(AuthenticationManagerBuilder auth) throws Exception {        auth.jdbcAuthentication().dataSource(dataSource)                .usersByUsernameQuery("select username, password, enabled "                        + "from users "                        + "where username = ?")                .authoritiesByUsernameQuery("select username, authority "                        + "from authorities "                        + "where username = ?");    }    @Override    protected void configure(HttpSecurity http) throws Exception {        http.authorizeRequests()            .antMatchers("/admin/**").hasRole("ADMIN")            .antMatchers("/user/**").hasRole("USER")            .anyRequest().authenticated()            .and()            .formLogin()                .loginPage("/login")                .usernameParameter("username")                .passwordParameter("password")                .defaultSuccessUrl("/")                .permitAll()            .and()            .logout()                .logoutUrl("/logout")                .logoutSuccessUrl("/login")                .permitAll();    }}

在上面的示例中,SecurityConfig类继承自WebSecurityConfigurerAdapter类,并使用@EnableWebSecurity注解启用Spring Security。configure()方法使用AuthenticationManagerBuilder来配置数据库的用户信息。dataSource是一个javax.sql.DataSource对象,它提供了数据库连接信息。usersByUsernameQuery()authoritiesByUsernameQuery()分别查询用户信息和权限信息。

configure()方法使用HttpSecurity对象来配置HTTP请求的安全性。antMatchers()方法指定了哪些请求需要授权。.hasRole("ADMIN")表示只有具有"ADMIN"角色的用户才能访问"/admin/"路径。.hasRole("USER")表示只有具有"USER"角色的用户才能访问"/user/"路径。anyRequest().authenticated()表示所有请求都需要进行身份验证。

formLogin()方法指定了表单登录的页面和参数。.loginPage("/login")表示登录页面的路径为"/login"。.usernameParameter("username").passwordParameter("password")分别指定了用户名和密码的参数名。.defaultSuccessUrl("/")表示登录成功后跳转到根路径"/"。.permitAll()表示登录页面不需要进行身份验证。

logout()方法指定了注销的URL和成功注销后的跳转页面。.logoutUrl("/logout")表示注销URL为"/logout"。.logoutSuccessUrl("/login")表示注销成功后跳转到登录页面。.permitAll()表示注销页面不需要进行身份验证。

标签:

Spring Boot的安全配置(一)|今日聚焦

SpringBoot是一个非常流行的Java开发框架,提供了各种实用的功能和组件来快速构建应用程序。安全是任何W...

04-06 10:36:17

头狼:黄金空头轻松加愉快,空单先收割,来个开门红|天天资讯

信狼哥,就收割昨天晚上我们就明确给出了2026调整干空,我们知行合一,所以持续加仓空,同时早上醒来直...

04-06 09:53:31

CBA常规赛座次排定-全球快播报

原标题:CBA常规赛座次排定中国体育报记者扈建华4月5日,2022-2023赛季CBA常规赛第42轮,也是最后一轮比...

04-06 09:00:57

世界资讯:【机构调研记录】财通基金调研亚钾国际

个股亮点:化肥品种主要为钾肥,旗下的中农国际钾盐开发有限公司拥有老挝甘蒙省35平方公里的钾盐采矿权...

04-06 07:48:08

新华时评|情系家国 聚力前行

新华社北京4月4日电题:情系家国聚力前行新华社记者任沁沁梨花风起正清明。草返青、花竞放,朝露晶莹、...

04-06 06:00:11

全球热头条丨湖南:防汛IV级应急响应解除

红网时刻新闻4月5日讯(记者杨艳)根据当前汛情及气象预报,依据《湖南省防汛应急预案》有关规定,省防...

04-06 02:18:26

环球观热点:广东击败新疆两连胜收官 33胜9负获常规赛第二

广东击败新疆两连胜收官33胜9负获常规赛第二,马尚,易建联,新疆男篮,朱旭航,广东男篮,内线

04-05 22:08:07

胜率仅36%!外媒看衰湖人战快船前景,赢球升第五,反超勇士 环球观热点

4月5日,NBA常规赛西部的格局发生很大的变动,勇士逆转赢球之后排名升至西部第五,不过相比起两大竞争对...

04-05 20:26:15

蔡澜世界名菜谱:卡巴丘Carpaccio|每日消息

第一个步骤就是先做白酱了,用一个大碗放入蛋黄、白醋、芥末、一点胡椒和盐,大力打匀,这时,将橄榄油...

04-05 18:47:23

天天资讯:翠微股份04月04日被沪股通减持25.79万股

04月04日,翠微股份被沪股通减持25 79万股,最新持股量为174 9万股,占公司A股总股本的0 22%。近五日...

04-05 17:14:56

世界快播:中国电科回应“员工痛批强制加班”:非集团公司所属成员单位和员工

4月4日,疑似“中国电科员工怒怼领导清明节强制安排加班”的相关聊天记录在网络上传播。5日,中国电子科...

04-05 15:35:53

给跑马拉松的男人送什么礼物

给跑马拉松的男人送的礼物,如果是比较好的朋友可以送保健品,衣服,或者是保健品之类的。当然,他喜欢...

04-05 15:32:16

橙光app下载安装_橙光下载

1、亲你好,如果你是要替换工程中的UI,在工程里打开【游戏设置】进入【游戏总设】然后在右下角找到【更...

04-05 13:58:00

Steam低至一折!《最后生还者》热修复!血压拉满!游戏存档被熊孩子清空!

Steam每日特惠SidMeier’sCivilization®VI文明6-90%Steam售价:199折后:19 9(史低)截止时间:4月18日支

04-05 12:23:56

每日速讯:头发像草一样干枯毛躁怎么办_头发干枯毛躁怎么保养

1、  很多女性因为自己干燥的秀发很是困扰,那么头发干枯毛躁如何保养呢?今天小编给大家分享一些头发...

04-05 10:40:31

世界要闻:隔夜美股 | 市场担忧经济疲软 三大指数走低 维珍轨道(VORB.US)收跌23.2%

截至收盘,道指跌198 77点,跌幅为0 59%,报33402 38点;纳指跌63 13点,跌幅为0 52%,报12126 33...

04-05 08:11:19

清明节,提醒:2不碰,吃3样,忌2事,尊重传统,祖先灵气长存 速讯

人不管走到哪一步,总得找点乐子,想一点办法。是的,美食就是我找的乐子,想的办法!小谈食刻和你一起...

04-05 06:13:33

go的第三人称单数_study的第三人称单数

一、题文study的第三人称单数形式是什么?是studys还是studies?二、解答studies,一般以y结尾的动词

04-05 03:01:37

秋花落更迟_秋花

1、1 待到秋来九月八,我花开后百花杀。2、---唐黄巢《不第后赋菊》2 兰有秀兮菊有芳,怀佳人兮不能忘...

04-04 22:48:50

信达证券:给予金陵饭店评级

信达证券股份有限公司刘嘉仁,王越近期对金陵饭店进行研究并发布了研究报告《年报点评:全年业绩稳中有增...

04-04 21:25:18

女仆小姐和猫耳怪盗 世界报道

少女在房间内哭泣着,一位身穿女仆装的小姐走了进来走到了少女身边。给少女铺上了一个毯子,然后少女没...

04-04 20:11:38

【世界热闻】纳川股份大宗交易价2.66元 长江环保集团曾4.3元收购

中国经济网北京4月4日讯今日,纳川股份(300198 SZ)发生了1笔大宗交易,总成交56万股,成交金额148 9...

04-04 19:16:47

当前视点!旅游行业一季度取得开门红 天眼查数据显示一季度旅游行业新增注册企业14.1万余家

春日和煦,春暖花开,全国旅游市场也在逐渐回暖。在吉林、安徽、湖南、云南、贵州、四川等地纷纷推出优...

04-04 18:00:42

梅州人速戳!清明出行高峰时段及易缓行路段 当前观点

QingMing清明节踏青缅怀感恩清明今年清明假期是新冠肺炎纳入“乙类乙管”后第一个传统祭扫假期高速公路...

04-04 17:22:35

全球新消息丨中威电子: 关于召开2023年第一次临时股东大会的通知

中威电子:关于召开2023年第一次临时股东大会的通知

04-04 16:24:28

岳塘区召开屋顶分布式光伏发电开发项目推进会

会议现场。为加快推进岳塘区光储一体化发电项目工作,近日,湘潭市岳塘区召开屋顶分布式光伏发电开发项...

04-04 15:19:04

政策有力需求回升 3月金融数据料趋暖

展望二季度,中国银行研究院近日发布的报告称,结构性货币政策工具将继续发挥牵引作用,普惠小微、绿色...

04-04 14:50:27

河北赵县万亩梨花盛放 春日限定款美景吸引八方游客 观焦点

央视网消息:在河北石家庄赵县,万亩梨花进入了盛放期,吸引各地游客前来赏花游玩。总台记者张婉莹:我...

04-04 13:27:17

空客正与中国航司谈判新一轮飞机订单

民航资源网2023年4月4日消息:据路透社消息,政府和行业人士表示,在法国总统马克龙行将访华之际,空客...

04-04 12:15:47

世界最新:淘宝推“99特卖频道”,预计4月底前全面上线

图片来源:图虫创意蓝鲸TMT频道4月4日讯,据了解,淘宝App已推出“99特卖频道”,目前仅面向部分用户开...

04-04 11:26:48

扩大优质消费品进口 满足消费升级需求 为企业提供商机

央视网消息:中国进口市场规模持续扩大,进口消费已经成为消费升级的重要驱动力量。商务部相关负责人4月...

04-04 10:57:34

桃源深处有人家星斗入拓活动怎么玩-星斗入拓活动玩法攻略

在桃源深处有人家游戏中,《桃源深处有人家》星斗入拓活动玩法是游戏内的一种搜集要素,玩家需要搜集个...

04-04 10:13:22

关于银河系的结构,你要知道这些

  银河系是太阳系所在的星系,被誉为“天河”“星河”。长期以来,人们不仅惊叹于银河系美丽的外观,...

04-04 09:34:37

吉林白山 补齐资金缺口 降低利率水平

春打六九头,春耕早动手,一年一度的备春耕已拉开序幕。为助力牢牢守住粮食安全底线,人民银行白山市中...

04-04 08:57:43

孚能科技(688567)4月3日主力资金净卖出2606.12万元

截至2023年4月3日收盘,孚能科技(688567)报收于23 0元,下跌2 09%,换手率0 81%,成交量6 57万手,成交额1 52亿元。

04-04 07:41:14

观速讯丨年报观察 | 建发物业多路并进

观点网3月30日,建发物业按时披露了2022年全年业绩。2022年,建发物业实现收入22 9亿元,同比增加47 1...

04-04 06:08:45

热推荐:秃鼻乌鸦和小嘴乌鸦_秃鼻乌鸦

1、1 历史的传说:消极形象:古希腊神话影响了南欧洲早期文明的大部,传说太阳神阿波罗与格露丝相恋,...

04-04 03:09:42

马斯克寻求法院驳回2580亿美元狗狗币诉讼|环球观焦点

据美国曼哈顿法院的一份文件称,马斯克及其电动汽车公司特斯拉的律师于上周五要求美国法官结束一项2580...

04-03 23:13:37

强信心·开新局丨吉林:大力推进项目建设为高质量发展蓄力

强信心·开新局丨吉林:大力推进项目建设为高质量发展蓄力---总投资1083亿元,72个旅游项目集中开工;总...

04-03 21:23:18

宜宾市叙州区高场镇:践行党政同责 狠抓交通安全

为确保辖区道路交通安全,有效预防和减少交通安全事故的发生,近日,高场镇党委副书记、镇长范羽带队开...

04-03 20:12:27

泰和科技:一季度净利预降70%-76%

泰和科技(300801)公告,预计2023年一季度归母净利3000万元-3700万元,同比下降70 35%-75 96%

04-03 19:12:32

最高奖30万元!野外违规用火、生产违法违规行为可举报-世界今热点

野外违规用火、破坏防火设施、生产违法违规,举报有奖!4月3日,上游新闻记者从2023年全市春季森林防灭...

04-03 18:24:45

全球看点:内蒙古:本学期全区普通高中学业水平合格性考试报名工作即将开始

2023年春季学期全区普通高中学业水平合格性考试定于2023年7月8-9日举行。高一年级新生考籍注册和选课报...

04-03 17:21:30

世界热文:吉林10月10日新增本土无症状感染者14例

据吉林省卫健委,10月10日0-24时,吉林省新增本地无症状感染者14例,其中,长春市11例,四平市1例,白山...

04-03 15:57:19

世界微资讯!天山铝业股东户数增加9.13%,户均持股24.43万元

天山铝业2023年4月3日在深交所互动易中披露,截至2023年3月31日公司股东户数为7 18万户,较上期(2023...

04-03 15:07:47

全球观点:索尼出PS5无障碍手柄的意义:有10亿残障群体的市场

今日,有日媒分析了索尼推出PS5圆形无障碍手柄的意义:除了让残障群体也能玩到游戏以外,索尼也想要涉足...

04-03 14:24:25

贪图银手镯,没想到换来了“玫瑰金手镯”

精致的纯银手镯,你喜欢吗?余某平时就很喜爱银质的饰品,这天她在逛街时一眼相中了一款银手镯,但她没...

04-03 13:26:09

春季守护行动 | 龙口市交警重拳出击 一天查获3辆“炸街车”_速看

大小新闻客户端4月1日讯(通讯员 刘琳)“轰、轰、轰……”随即又一路轰鸣而去对于“炸街车”市民为之...

04-03 12:59:52

救生绳正确使用方法_救生绳

1、用途:当发生火灾等灾难时,将救生绳的一端用救生钩固定,另一端系在使用者的腰上,双手抓住绳子,顺...

04-03 12:13:38

银行间隔夜和7天期回购利率均走低

银行间隔夜和7天期回购利率均走低;二季度首个交易日,央行进行大额净回笼操作,银行间隔夜和7天期质押...

04-03 11:29:10

环球热讯:西安部分学生走进烈士陵园缅怀英烈
焦点速看:海昌海洋公园面向孤独症家庭免费开放一个月
环球微速讯:文森特·克拉布_关于文森特·克拉布简介
王一博为什么很少品牌线下活动_王一 博为什么很少说话
英美诗歌批评教程_关于英美诗歌批评教程的简介
环球快报:奇瑞“eQ7”官图发布,基于全铝平台打造的纯电中型SUV
【世界热闻】山西首次成功发行黄河流域生态保护和高质量发展主题专项债券
交易时不必结清前一笔贷款,“带押过户”模式来了_每日消息
一级建造师网课学习网站(一级建造师网课)
鸿远电子:3月31日融资净买入476.91万元,连续3日累计净买入1274.17万元
环球看点!美国的银行存款连续第二周大幅下降
德文英语学校|全球热点评
环球热头条丨德行第一文言文翻译(德行第一译文)
世界视点!海能达:2022年净利4.07亿元 同比增161.58%
微动态丨银保监会发文对信托公司异地部门设置实施数量限制
天天要闻:布拖县气象台发布雷电黄色预警信号【III级/较重】
多吃鱼对身体好,但这3种鱼最好别吃!
环球最资讯丨世茂集团(00813):世茂建设2022年下半年净亏损约85.98亿元
魅族20系列评测:最大的亮点是手机本身 当前焦点
【一线调研】产业专家团“到田下户”,带来哪些新技术,新法宝?
石章鱼作品大全_石章鱼作品-每日动态
【报资讯】平桥区市场监管局:开展“五进”宣传 为营商环境描上“科技底色”
品质养老 乐享人生——前海人寿幸福小镇惠州康养社区举办一周年庆典-当前热讯
英文翻译器拍照扫一扫_相信英文
郑州航空港经济综合实验区平安建设促进中心正式投用
艾依格全屋定制品牌好不好_玛格全屋定制怎么样-天天讯息
南京那家白癜风医院好啊-老年白癜风患处如何护理 速递
信息:英伟达出手整治“山寨显卡”,各大电商平台开始清理
焦点!「新时代新征程新伟业·贯彻落实两会精神」将宏伟蓝图变为“实景图”
世界今头条!关于网传“西双版纳一夜市旅拍店拉客不成殴打游客”回应来了!
热点评!江西农村见闻:生态小龙虾激活乡村振兴“一池春水”
观点:潮汕人的特点 特点看你中几个_潮汕人的特点
罗马诺:巴萨今夏免签伊尼戈-马丁内斯达成口头协议
「虹日刊!!」第九百八十九期(23.03.30)
大田美人茶:源于宝岛,产自仙峰
南通交通违章查询_南通交通违章查询网站入口
【天天速看料】出台专项支持政策 北京丰台区助力智能制造“加速跑”
绿色田野上的“新农人” 生态种养结合蹚新路-世界播资讯
今日快看!东京股市两大股指回落
环球观焦点:美国假“民主”之名,行“反民主”之实(观象台)
环球热文:安迪泰
“山海共鉴 家业常青”招商银行私人银行(青岛海信国际)中心盛大开业
昌吉市北京南路街道天方社区开展消防安全隐患排查_每日消息
天天视讯!山东最好5个二本大学 2023哪些二本实力强
数字驱动,赋能营销 太重集团CRM销售管理平台成功上线-独家焦点
烟台市蓬莱区:做实做优预算绩效管理工作
多重挑战碰头 世界经济如何“钢丝上跳舞”?_最新消息
这款凯迪拉克Escalade ESV大型豪华轿车就像一架降落的私人飞机|全球快资讯
每日视点!小货车价格一般是多少_小货车价格
TUV南德举办汽车网络安全人员资质培训,助推网络安全人才培养_世界时快讯
X 广告
资讯
X 广告

Copyright ©  2015-2022 现在畜牧网版权所有  备案号:粤ICP备18023326号-5   联系邮箱:855 729 8@qq.com