Grails安全插件:存储其他用户数据的位置?

时间:2012-10-09 12:33:05

标签: spring security grails

我想在我的应用中使用Grails Spring Security Plugin。它创建一个代表用户的域类。我在互联网上的研究表明,将所有数据都放在这个类中是不好的,因为它一直在加载。

我的简单解决方案是将数据打包到另一个类中,然后在安全用户类中进行解析。这是一个好方法吗?

2 个答案:

答案 0 :(得分:1)

是的,这是一个很好的方法。我经常使用Profile类来附加其他用户配置文件数据。我还直接向User类添加了其他属性。这可能取决于你所谈论的额外数据量。

答案 1 :(得分:1)

它不是“一直加载”,它是在您进行身份验证时加载的。用户名,密码和角色名称用于构建存储在HTTP会话中的Authentication实例。检查是否具有各种URL的访问权限。

但是,将数据划分为与安全相关的用户类和关联的配置文件类是有意义的,如@Gregg所述。

您可以使用自定义userDetailsService实现来缓存Authentication中User类的数据,以避免从数据库中重复加载整个内容;见http://grails-plugins.github.com/grails-spring-security-core/docs/manual/guide/11%20Custom%20UserDetailsService.html