2.3创建用户访问过滤器(安全性)
在我们的真实应用中,我们需要封装我们的服务请求,过滤掉不好的请求信息。在Spring Boot框架中会自动添加OrderedCharacterEncodingFilter和HiddenHttpMethodFilter, 但是我需要的往往更多。
在Spring的框架家族中,如Spring Boot, Spring MVC, SpringWeb 和其它的,都提供了多个不同的服务过滤。我们只需要声明它们作为bean来使用即可。想象一下,我们现在有个应用运行在负载均衡的代理中,用户请求的IP需要是真实的IP而不是代理中IP。Tomcat8提供了我们这个功能,那就是RemoteIpFilter。我们需要把RemoteIpFilter加入到我们的过滤链中。
2.3.1代码实现
1.为了明确什么样的类需要被配置,我们需要创建一个配置类取名为WebConfiguration在src/main/java/org/owen/bookpub目录下。
@Configuration |
2.执行程序,你将会看到如下的信息,若果没有,是正常,不需要纠结这个。
..FilterRegistrationBean: Mapping filter: 'remoteIpFilter' to:[/*] |
2.3.2代码说明
在我们的主类BookPubApplication中,我们看到@SpringBootApplication的注释,这个注释包含了@ComponentScan。@ComponentScan构造是Spring Boot会去探测WebConfiguration上的@Configration类,并将它添加到上下文中。所以,我们声明的WebConfiguration就相当于直接放入到BookPubApplication中一样。
@Bean public RemoteIpFilter remoteIpFilter(){…}声明简单创建一个bean给RemoteIpFilter类,它将会加入到过器链中并自动装配。这样的话,只要我们想加更多的过滤器到配置中,例如我们要指定过滤器去应用特殊的URL,我们可以创建@Bean 的FilterRegistrationBean的类型。
2.3创建用户访问过滤器(安全性)相关推荐
- MySQL给用户设置密码(修改密码)、创建用户,grant为某个IP、某个网段或所有IP地址创建访问用户并授权
1. 设置密码 1.1 我们刚安装完mysql,登录是不需要密码的,可以直接进入,如下图. 1.2 感觉没密码总是不靠谱,所以想要设置一个密码.其实我们只要修改一下用户表中对应用户的密码就可以重新设置 ...
- 阿里云mysql创建多个用户_阿里云MySQL创建指定用户访问指定表
欢迎大家关注我的公众号,有问题可以及时和我交流. 1.首先进入到root用户环境 mysql -uroot -p 输入自己的root密码登录. 登录成功之后如果表之前已经存在的话就不需要创建,如果表不 ...
- Linux 创建用户并限制其访问目录,设置密码为永不过期
创建用户及访问目录 useradd sou -d /tmp/sou -M 设置用户密码 passwd sou Tip:输入命令后,会提示输入密码 修改密码为永不过期 chage -M 99999 so ...
- Mysql创建用户给局域网内用户使用,开放权限,开放ip访问。
需求: 开放数据库给局域网内用户使用,需要创建用户以及开放部分权限. 解决: 1.登录mysql数据库 未设置全局变量需要进入相关路径 cd mysql8.0/bin 登录mysql mysql -u ...
- oracle创建用户赋予访问某一视图的权限
Oracle创建一个用户,只有访问某一视图的权限 登录到sysdba用户 创建用户 create user [username] identified by [password]; 授予用户连接查询权 ...
- oracle创建用户(让他可以访问其他用户的表)
一.创建一个普通用户,让他可以访问其他用户的表 第一步:创建用户 create user user80 identified by user80; 第二步:授权 grant connect,resou ...
- linux新建用户只能查看自己的目录,Linux创建用户只能访问某个目录
文章目录需求:创建一个用户,让他只能访问某个目录用 setfacl 实现:用ssh+ftp的方法实现:需求:创建一个用户,只能用于ftp登陆 需求:创建一个用户,让他只能访问某个目录 useradd ...
- linux 创建用户并限制其访问目录
1.创建用户及访问目录 useradd username-d /mnt/storage2/design_draft -M 2.设置密码 passwd username 3.创建组(如已有组则跳过) g ...
- oracle 授权访问条空间,oracle创建用户和角色、管理授权以及表空间操作
show user 显示当前用户 connect username/password@datebasename as sysdba 切换用户和数据库 和用户身份 Oracle登录身份有三种: norm ...
- linux配置sftp访问指定目录,Linux创建用户,SFTP只允许访问指定目录
首先创建用户 useradd lus1 passwd lus1 我这里配置lus1这个用户目录,为sftp指向目录,即/home/lus1/ vim /etc/ssh/sshd_config //这个 ...
最新文章
- Python一维二维数据的格式化和处理
- 微软语音扩展全球语言支持,发布160个新声音
- 区块链开源实现 hyperledger fabric 概念与原理
- Java 对象的序列化和反序列化
- centos压缩和解压缩
- rabbitmq取消自动重连_rabbitmq客户端自动重连
- 过年前谈个恋爱很过分吗?
- php下拉上滑分页,Flutter实现下拉刷新 上拉分页加载更多
- 看了部电影——青春期
- Oracle官网下载JDk文档
- 正确打开db文件的方式,避免乱码和无意义内容
- xml文件编辑器----foxe_CHS
- MFiX存储ReactionRates的模块
- js闭包循环原因_「js基础」JavaScript入门,难不难你来说
- 《智慧彼岸之定心经》
- æµè¯oschina
- 中科院计算所职业培训中心2014年四季度课程安排
- Armadillo使用介绍(十二):fft / ifft
- 缓存着色 Page color测试
- 了解appium自动化的工作原理(uiautomator)