如果用户已经执行了操作,则Spring Security拒绝访问
在SpringBootWeb应用程序中,我有一个页面,如果用户已经执行了操作,则Spring Security拒绝访问,spring,spring-mvc,spring-boot,spring-security,Spring,Spring Mvc,Spring Boot,Spring Security,在SpringBootWeb应用程序中,我有一个页面,User可以对他参与的事件进行评分。然而,如果他已经这样做了,他应该不能打开这个页面。在我的Thymeleaf中,他没有看到Rate event按钮,但他仍然可以键入URI并进入此页面。我如何提供安全性,以便用户无法访问此页面用户拥有他已经评级的事件ID的列表。 如何实现我的功能 编辑:简单签入控制器 if( logged.getRatedGamesId().contains(gameId)){ return "redirect:/u
User
可以对他参与的事件进行评分。然而,如果他已经这样做了,他应该不能打开这个页面。在我的Thymeleaf
中,他没有看到Rate event
按钮,但他仍然可以键入URI并进入此页面。我如何提供安全性,以便用户无法访问此页面<代码>用户拥有他已经评级的事件ID的列表。
如何实现我的功能
编辑:简单签入控制器
if( logged.getRatedGamesId().contains(gameId)){
return "redirect:/users/" + logged.getId() + "/pastGames";
在不使用Spring Security的情况下,这是一种好的方法还是至少是正确的方法?向我们展示已经尝试过的方法。还没有尝试过任何东西。我在寻找最佳实践。我考虑使用自定义权限计算器。这是个好主意吗?简单的值机控制器怎么样?如果User.ratedGamesId
包含Game.id
只需重定向到另一个带有消息的页面?签入控制器似乎很好,因为它实际上检查一些业务逻辑(可以投多少次票)而不是与安全相关的问题(如用户名/密码/令牌)。向我们展示已经尝试过的内容。还没有尝试过任何内容。我在寻找最佳实践。我考虑使用自定义权限计算器。这是个好主意吗?简单的值机控制器怎么样?如果User.ratedGamesId
包含Game.id
只需重定向到另一个带有消息的页面即可?签入控制器看起来不错,因为它实际上检查一些业务逻辑(可以投多少次票)而不是与安全相关的事项(如用户名/密码/令牌)。