我已经和Grails工作了几个月了,我偶然发现了一些......
所以我安装了一个安装了Spring Security的小应用程序并使用户等。
提前谢谢大家
------- -------- EDIT
为了使问题更简单直接,请忘记班级名称。
class ABC extends XYZ{...}
class XYZ{...}
问题:XYZ的多个对象可以扩展ABC的同一个对象吗? **所以,如果我已经有了扩展XYZ1的对象ABC1,我可以创建XYZ2并让它扩展ABC1吗?
答案 0 :(得分:2)
用户似乎应该拥有一个群组。根据您的型号,他们可以有一个或多个组。所以我的建议是:
class Group {
String name
}
与User
的关联:
class User {
Group userGroup
}
或
class User {
static hasMany = [groups: Group]
}
在您创建课程的方式中,似乎群组是用户,我认为这不是您想要实现的目标。
答案 1 :(得分:0)
您可能需要Hierarchical Roles而非一组用户才能这样做。
答案 2 :(得分:0)
抱歉,我可能会忽略您的观点,但听起来您正在寻找行级(或实例级)访问控制。例如,您似乎只想要某些用户(某个组内的用户)能够访问(查看,编辑等)一个对象(例如同一个组对象)。
如果这是你的意图,那么我建议你看看shiro插件 - 在我看来,它比Spring Secuity更能实现实例级ACL。
http://grails.org/plugin/shiro
还有一个新的插件,通过Spring Security集成了shiro ACL。没有自己测试过,但如果你已经将Spring Security集成到你的应用程序中,那么看起来可能就是这样。