如何禁止访问grails中的视图或控制器

时间:2012-10-23 15:52:22

标签: grails spring-security

我有一个像这样的控制器

class MyController {

    def index() {    }
    def list(Integer max) {      }
    def create() {     }
}

我有不同的角色,例如“管理员”,“用户”  我希望只有“管理员”才能看到“创建”视图。知道我使用的是Spring Security

1 个答案:

答案 0 :(得分:3)

documentation非常清楚如何处理这个问题。通过数据库使用Requestmap来锁定URL或使用Annotations。

如果您正在使用Requestmap,则只需锁定特定角色集的URL即可。如果您想锁定MyController,其中create view仅对管理员可用,那么它将是

configAttribute: ROLE_ADMIN   url: /myController/create/**

如果使用Annotations,那将是

class MyController {
    @Secured(['ROLE_ADMIN'])
    def create() { }
}

阅读写得很好的documentation以获取更多信息。