-
Notifications
You must be signed in to change notification settings - Fork 122
H、在线用户强制下线
wangjie edited this page Dec 25, 2019
·
3 revisions
#jsets-shiro配置
jsets:
shiro:
#是否启用强制用户下线(系统管理员通过session操作迫使指定用户下线),不配置默认不启用
force-logout-enable: true
#用户被强制下线后跳转的页面,force-logout-enable=true时此项有用,不配置默认跳转到login-url
force-logout-url: /force_logout
@Controller
@RequestMapping("/online")
public class OnlineAction {
/**
* 当前在线用户
*/
@RequestMapping("/list")
public String list(Model model) {
// 当前存活的Session数量
int onlineCount = ShiroUtils.getActiveSessionCount();
// 当前存活的Session列表
List<Session> activeSessions = ShiroUtils.getActiveSessions();
// 包装OnlineUserVo
List<OnlineUserVo> onlineUsers = Lists.newArrayList();
// 包装代码见DEMO
model.addAttribute("onlineCount",onlineCount);
model.addAttribute("onlineUsers",onlineUsers);
return "online/online_list";
}
/**
* 强制用户下线
*/
@RequestMapping("/do_force_fogout")
public String doForceLogout(@RequestParam(name="sessionId") String sessionId) {
ShiroUtils.forceLogout(sessionId);
return "redirect:/online/list";
}
}
在线用户列表:
强制下线效果: