Spring mvc Spring Security-用户根据业务逻辑重定向所有安全页面/视图的成功身份验证
新手春季MVC/安全问题。我已经设法实现了Spring安全性来管理用户安全性/身份验证。我现在想为经过身份验证的用户实现业务逻辑,并根据业务逻辑的结果重定向到不同的视图/页面 例如(假设用户已成功通过身份验证,并且具有请求的视图/页面所需的角色):Spring mvc Spring Security-用户根据业务逻辑重定向所有安全页面/视图的成功身份验证,spring-mvc,spring-security,Spring Mvc,Spring Security,新手春季MVC/安全问题。我已经设法实现了Spring安全性来管理用户安全性/身份验证。我现在想为经过身份验证的用户实现业务逻辑,并根据业务逻辑的结果重定向到不同的视图/页面 例如(假设用户已成功通过身份验证,并且具有请求的视图/页面所需的角色): 如果用户尚未验证其电子邮件>显示电子邮件验证 错误视图/页面,带有重新发送电子邮件验证电子邮件的链接 否则,如果用户未能通过某些其他业务逻辑>显示第X页 否则,如果用户未能通过某些其他业务逻辑>显示第Y页 ELSE>显示 默认身份验证后视图/页面或
- 如果用户尚未验证其电子邮件>显示电子邮件验证 错误视图/页面,带有重新发送电子邮件验证电子邮件的链接
- 否则,如果用户未能通过某些其他业务逻辑>显示第X页
- 否则,如果用户未能通过某些其他业务逻辑>显示第Y页
- ELSE>显示 默认身份验证后视图/页面或请求的视图/页面
另一种方法是直接在web.xml中配置您的过滤器实现,确保它仅在受Spring安全性保护的URL上调用。在这里,在web.xml中声明过滤器的顺序将变得非常重要,因为您需要确保首先调用Spring安全过滤器链(以确保用户经过身份验证并具有正确的角色)在调用自定义筛选器之前。筛选器似乎是一个明显的选择,但我仍然不清楚如何使用它将用户重定向到不同的页面/屏幕。这取决于内部业务逻辑的结果。我通过两种方法的组合实现了它:设置会话变量的Post Success处理程序(例如,emailValidated=true/flase Filter检查会话变量emailValidated=true并重定向用户以验证您的电子邮件页面,如果该变量为false,emailvalidation控制器还负责为验证其电子邮件的用户更改emailValidated in会话的状态(通过单击链接)