Grails Acegi插件-如何更新缓存?

Grails Acegi插件-如何更新缓存?,grails,spring-security,Grails,Spring Security,我对Acegi插件有问题。问题是Acegi缓存用户信息。如果我更新角色或密码,更改不会立即出现。有一段时间我甚至可以用以前的密码注销和登录。我找到了两个解决方案 在SecurityConfig.groovy中设置cacheUsers=false 使用特殊筛选器更新securityContext 两种解决方案都有效。不幸的是,两者都会产生大量的数据库查询 用户只在UserService.update(..)中更新,我可以预期他们很少更新。是否有机会立即更新securityContext。这对当前用

我对Acegi插件有问题。问题是Acegi缓存用户信息。如果我更新角色或密码,更改不会立即出现。有一段时间我甚至可以用以前的密码注销和登录。我找到了两个解决方案

  • 在SecurityConfig.groovy中设置cacheUsers=false
  • 使用特殊筛选器更新securityContext
  • 两种解决方案都有效。不幸的是,两者都会产生大量的数据库查询


    用户只在UserService.update(..)中更新,我可以预期他们很少更新。是否有机会立即更新securityContext。这对当前用户来说没有问题。但我能为另一个登录用户做这件事吗??e、 g.如果管理员更改某些用户的角色/密码

    cacheUsers=false是最佳选项。它不会产生“负载”的查询,每个登录只产生一个。略微增加的成本超过了缓存带来的恼人的副作用