In grails, how do I get a reference to all current

2019-02-22 07:13发布

I'd like to list all current sessions in an Admin Controller in grails. What's the easiest way to get a reference to e.g. a Collection of sessions from the controller?

2条回答
做个烂人
2楼-- · 2019-02-22 07:41

This is a feature (disabled by default but easily enabled by setting grails.plugins.appinfo.useContextListener = true in Config.groovy) of the App-Info plugin: http://grails.org/plugin/app-info

查看更多
唯我独甜
3楼-- · 2019-02-22 07:51

there is a "groovy" way to do this without a SessionListener, there are events generated that closures can be assigned to. You can capture successful sessions, in a map/list, and remove sessions from after logout or

Registering Callback Closures

rails.plugins.springsecurity.useSecurityEventListener = true
grails.plugins.springsecurity.onInteractiveAuthenticationSuccessEvent = { e, appCtx ->
   // handle InteractiveAuthenticationSuccessEvent
}

grails.plugins.springsecurity.onAbstractAuthenticationFailureEvent = { e, appCtx ->
   // handle AbstractAuthenticationFailureEvent
}

grails.plugins.springsecurity.onAuthenticationSuccessEvent = { e, appCtx ->
   // handle AuthenticationSuccessEvent
}

grails.plugins.springsecurity.onAuthenticationSwitchUserEvent = { e, appCtx ->
   // handle AuthenticationSwitchUserEvent
}

grails.plugins.springsecurity.onAuthorizationEvent = { e, appCtx ->
   // handle AuthorizationEvent
}
查看更多
登录 后发表回答