Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果用户已经执行了操作,则Spring Security拒绝访问_Spring_Spring Mvc_Spring Boot_Spring Security - Fatal编程技术网

如果用户已经执行了操作,则Spring Security拒绝访问

如果用户已经执行了操作,则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

在SpringBootWeb应用程序中,我有一个页面,
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
只需重定向到另一个带有消息的页面即可?签入控制器看起来不错,因为它实际上检查一些业务逻辑(可以投多少次票)而不是与安全相关的事项(如用户名/密码/令牌)。