我们正在使用Shiro作为Sequrity使用JAX-RS(Jersey)编写JAVA WebApp。
我们有:
当用户登录时,如何在身份验证后根据他的角色将用户重定向到他自己的主页。
来自shiro ini的一些代码:
authc.loginUrl = /login.html
[urls]
/apps/admin/** = authc, roles["admin"]
/apps/teacher/** = authc, roles[teacher]
/apps/student/** = authc, roles[student]
例如:
答案 0 :(得分:1)
我有同样的要求,我按照以下方式做了......
if (currentUser.isAuthenticated()) {
if (currentUser.hasRole("admin")) {
response.sendRedirect("app/admin/adminpage.jsp");
}
else if (currentUser.hasRole("student") || currentUser.hasRole("admin")) {
response.sendRedirect("app/student/studentpage.jsp");
}
else if (currentUser.hasRole("teacher") || currentUser.hasRole("admin")) {
response.sendRedirect("app/teacher/teacherpage.jsp");
}
}
else {
response.sendRedirect("app/login.jsp");
}