![15bb91980afb3e6242a3dbc00dd26c96.png](https://i-blog.csdnimg.cn/blog_migrate/91533c70b86aedf42372b7e7fa4db236.jpeg)
有时候,我们自己开发一个简单Web服务器,希望访问该服务器之前进行登录鉴权。如果我们专门开发一个权限管理系统,则权限管理部分的工作量非常大,甚至超过业务部分的开发工作量。
其实我们使用SpringBoot构建Web系统时,可以使用Spring Security轻松实现权限管理。
下面我们使用Spring Security,几乎不用编码,就实现了权限管理功能。
1、创建SpringBoot模块
使用IDEA工具创建一个模块web_security,使用Lombok、Spring Web、Spring Security三个依赖。模块创建之后代码视图如下:
![ea08513cf6d31b5fe80d0a2b3861811b.png](https://i-blog.csdnimg.cn/blog_migrate/b5d008485ecc6dbac78b7d3f15f90a9d.jpeg)
2、创建Controller类
添加controller包,然后在controller包中添加MessageController类。类创建后的代码视图如下:
![93b84a0161333894a44d31a7b88d0824.png](https://i-blog.csdnimg.cn/blog_migrate/db365eaba0c541a9afa691f4fd8d703a.jpeg)
MessageController类中提供了一个showMessage方法,用于进行测试。MessageController类的源代码如下:
package com.flying.web_security.controller;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class MessageController { @GetMapping("/showMessage") public String showMessage(){ return "Hello, you just called showMessage"; }}
3、对SpringBoot的属性进行配置
修改application.properties文件,修改Web服务器的监听端口,设置登录的用户名、密码和口令:
server.port=8180spring.security.user.name=tomspring.security.user.password=20201124spring.security.user.roles=admin
4、测试
对上面的源代码进行编译、打包后,直接运行,运行情况如下:
![9ef42750a165213e7a781b7aa9e07607.png](https://i-blog.csdnimg.cn/blog_migrate/86b730d7fb43604acb456249e613bc51.jpeg)
当我们在浏览器中输入:8180/showMessage后,浏览器却显示如下的登录界面:
![2b8461e64cb69646a13c56ae00aebe60.png](https://i-blog.csdnimg.cn/blog_migrate/b53088b3c728095a88efbe06c84d975f.jpeg)
当我们输入用户名tom和密码20201124后,点击“Sign In”按钮后,显示信息如下:
![45858f6f854bd34f89c6207132b55758.png](https://i-blog.csdnimg.cn/blog_migrate/5f9752fac887cb80b341bb65249f880e.jpeg)
当然,我们只需要登录一次,只要登陆过一次,使用该浏览器再访问showMessage对应的url,就不需要再登录了。
这里只是简单地使用Spring Security,其实Spring Security的功能非常强大,足以应付大型Web系统的安全管理功能,大家使用时,可以在官网参考开发指南。