我想在用户第一次登录时显示一个屏幕。在哪里运行检查用户之前是否登录过是否有最佳实践?我正在使用 Spring Security Core 插件。
问问题
58 次
1 回答
0
Spring Security 没有内置任何内容来执行此操作。我正在做类似的事情,但它基于用户是否接受了许可协议。这是示例过滤器代码,可以执行您想要的操作。它未经测试:
def filters = {
neverLoggedIn(controller: "login", invert: true) {
before = {
if (springSecurityService.isLoggedIn()) {
def authenticatedUser = getLoggedInUserCode()
if (!authenticatedUser.hasLoggedInBefore) {
redirect controller: "someFirstLoginController", action: "index"
return false
}
}
}
after = { Map model -> }
afterView = { Exception e -> }
}
}
于 2013-09-13T05:05:56.287 回答