Spring Security使用H2数据库注意事项

以你之姓@ 2023-06-19 07:20 99阅读 0赞

#Spring Security使用H2数据库web后台注意事项
最近在用spring boot+spring security+h2做点事情,最开始想得还是比较简单的,但是在实际使用过程中还是出现了许多问题,这里做一下记录以备后来遇到状况的时候使用。
##host问题
前面文章提到过的问题java.net.UnknownHostException这个异常,在打开h2后台管理界面出现,需要将hosts的映射修改为本机
##无法打开登陆界面
需要在spring security配置中添加对h2管理界面的允许操作(仅针对开发环境)

  1. http.authorizeRequests()
  2. .antMatchers("/h2-console/**").permitAll()

添加了这个配置则h2的管理界面就能顺利越过spring security的安全策略
##CSRF防护
spring security默认是启用了CSRF防护的,但是h2的后台管理的请求需要携带CSRF口令之类的参数,因此会被spring security拦截所以我们需要针对h2放开CSRF防护,因此需要添加一个配置

  1. http.csrf().ignoringAntMatchers("/h2-console/**"); // 禁用 H2 控制台的 CSRF 防护

##X-Frame-Options问题
H2后台管理界面采用了iframe,而spring security默认是禁止了ifreame的使用,因此我们也需要针对h2开放对iframe的限制

  1. http.headers().frameOptions().sameOrigin(); // 允许来自同一来源的H2 控制台的请求

通过修改这些配置我们就能在spring security环境中使用h2后台管理界面了

发表评论

表情:
评论列表 (有 0 条评论,99人围观)

还没有评论,来说两句吧...

相关阅读