Grails-Spring安全性-许多动态角色
我正在使用Grails和Spring安全性开发一个应用程序 我的愿望是,当用户创建通知其公司名称的帐户时,应用程序会在公司、角色和用户表中创建一个条目,并将该角色和用户与公司条目相关联 创建的角色将类似于管理员,拥有执行任何操作的权限。具有该角色的此用户可以创建指定权限的新角色,但创建的所有角色应仅在公司范围内,因此其他公司的用户不应使用这些角色 我已经看到,Spring安全性有一个名为Requestmap的特性,对于每个URL,应用程序都可以指定有权访问的角色 我不知道这是否是最好的解决方案,因为在我的应用程序中,角色数量的增加至少与用户数量的增加一样多 你们对如何解决这个问题有什么建议吗 谢谢大家。你应该看看 有了这个插件,你就可以在某些域模型上为某些用户添加权限(比如写或读权限) 查看文档中的示例:Grails-Spring安全性-许多动态角色,spring,grails,spring-security,Spring,Grails,Spring Security,我正在使用Grails和Spring安全性开发一个应用程序 我的愿望是,当用户创建通知其公司名称的帐户时,应用程序会在公司、角色和用户表中创建一个条目,并将该角色和用户与公司条目相关联 创建的角色将类似于管理员,拥有执行任何操作的权限。具有该角色的此用户可以创建指定权限的新角色,但创建的所有角色应仅在公司范围内,因此其他公司的用户不应使用这些角色 我已经看到,Spring安全性有一个名为Requestmap的特性,对于每个URL,应用程序都可以指定有权访问的角色 我不知道这是否是最好的解决方案,
@Transactional
@PreAuthorize("hasPermission(#report, write) or " +
"hasPermission(#report, admin)")
Report updateReport(Report report, params) {
report.properties = params
report.save()
report
}
通过使用PreAuthorize
注释,可以检查用户是否对该特定报表
实体具有写入(或管理)权限。您应该查看
有了这个插件,你就可以在某些域模型上为某些用户添加权限(比如写或读权限)
查看文档中的示例:
@Transactional
@PreAuthorize("hasPermission(#report, write) or " +
"hasPermission(#report, admin)")
Report updateReport(Report report, params) {
report.properties = params
report.save()
report
}
通过使用PreAuthorize
注释,可以检查用户是否对该特定报表
实体具有写入(或管理)权限