Java 使用Spring+;设置单页公共页面时出现问题;密钥斗篷,root似乎覆盖了所有权限?

Java 使用Spring+;设置单页公共页面时出现问题;密钥斗篷,root似乎覆盖了所有权限?,java,spring,security,keycloak,vaadin14,Java,Spring,Security,Keycloak,Vaadin14,我对使用Spring和Spring安全性非常陌生,所以问题可能很小 当前设置: 我们已经使用Vaadin、Spring和KeyClope制作了一个应用程序。现在,据我所知,Spring安全性和KeyClope可以协同工作,使登录用户能够访问页面。到目前为止,只要您登录,我们有多个页面都可以正常工作 目标: 现在我们想添加一个公共页面“硬件”,它不需要登录。这似乎比应该的更难?硬件URL类似于/hardware/(有效序列号)。/hardware路径本身不存在,并且从未用作路径,仅与序列号结合使用

我对使用Spring和Spring安全性非常陌生,所以问题可能很小

当前设置

我们已经使用Vaadin、Spring和KeyClope制作了一个应用程序。现在,据我所知,Spring安全性和KeyClope可以协同工作,使登录用户能够访问页面。到目前为止,只要您登录,我们有多个页面都可以正常工作

目标

现在我们想添加一个公共页面“硬件”,它不需要登录。这似乎比应该的更难?硬件URL类似于/hardware/(有效序列号)。/hardware路径本身不存在,并且从未用作路径,仅与序列号结合使用

尝试

在我们的SecurityConfig中,我们有以下代码:

http.csrf()
              .disable()
              .logout()
              .logoutUrl("/logout")
              .permitAll(false)
              .and().authorizeRequests().antMatchers("/vaadinServlet/UIDL/**").permitAll()
              .and().authorizeRequests().antMatchers("/vaadinServlet/HEARTBEAT/**").permitAll()
              .and().authorizeRequests().antMatchers("/hardware/**").permitAll()
              .and().authorizeRequests().antMatchers("/**").hasAuthority(Privilege.AUTHENTICATED);
但现在在我们的公共页面“硬件”上,我们仍然遇到“服务器连接丢失,尝试重新连接…”的厄运错误。是否可能是Spring、Vaadin或Key斗篷调用了其他一些东西导致此页面失败,或者是此配置错误

或者是关于如何调试这个的一般提示?一个多星期以来,我们一直在努力克服这一问题,但毫无进展

问候,


Arnoud

为什么要在硬件之后使用/**?
它涵盖了硬件的所有子链接,而不是它本身

为什么要在硬件之后使用/**?
它涵盖了硬件的所有子链接,而不是其本身

Ah好的一点,该页面仅在路径后有有效的序列号时才工作,路径本身不存在,仅与有效的序列号结合使用。:)我已经更新了这个问题,包括这一点,很好的观察!啊,很好的一点,只有当路径后面有一个有效的序列号时,页面才起作用,路径本身不存在,只有与有效的序列号组合时才起作用。:)我已经更新了这个问题,包括这一点,很好的观察!