添加Spring Security会导致列和表丢失

时间:2018-06-13 10:02:30

标签: java spring postgresql spring-boot spring-security

我一直在用Spring Boot开发一个webapp。昨天我添加了Spring Security并强制HTTPS支持任何请求,扩展WebSecurityConfigurerAdapter并添加

http.authorizeRequests().anyRequest().permitAll().and().requiresChannel().anyRequest().requiresSecure();

configure(HttpSecurity http)重写方法。 我还在返回Connector的bean中添加了一个额外的ServletWebServerFactory,它将HTTP重定向到HTTPS:

Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
connector.setPort(80);
connector.setRedirectPort(443);

突然间,我收到了很多错误:

org.postgresql.util.PSQLException: ERROR: column AAA does not exist
org.postgresql.util.PSQLException: ERROR: relation "BBB" does not exist

数据库中存在AAABBB的位置(我使用DataGrip验证)。没有其他代码被触及过。我使用JdbcTemplate进行查询(没有Hibernate / JPA)。

我有两年的Spring经验,我发现这令人眼花缭乱。不得不说这是我从头开始在Spring完成的第一个应用程序。

1 个答案:

答案 0 :(得分:0)

我终于解决了这个邪恶的问题。在启动Spring Security的情况下启动应用程序时,我通过命令行参数传递了错误的连接字符串。

我在阅读您的评论后再次对代码进行了回归,并注意到抛出了相同的异常,因此立即将罪魁祸首排除在罪魁祸首之外。

之前我没有注意到,因为我之前的发布已经完成(没有注意到)正确的连接字符串。

由于我存储命令行参数的文本文件中的错误复制粘贴,这是一个错误。

感谢您,确认Spring Security和数据库问题无关,我能够更好地指导我的搜索。