2012-01-08 75 views
1

我使用四郎保护我的Grails应用程序,使用默认的配置与Grails:如何用shiro保护gsp视图?

grails shiro-quick-start 

和自定义用户。到目前为止,所有控制器操作都受到保护,但是如果我将URL放入GSP文件(比如index.gsp),我不会得到登录提示。

我使用的默认筛选器是

def filters = { 
    all(uri: "/**") { 
     before = {  
      accessControl()    
     } 
    }  
} 

但似乎GSP-文件不匹配此URI的过滤器。我必须使用什么URI-Filter?我正在使用grails 1.3.7和shiro插件1.1.3

回答

1

非常有趣,但似乎是一个grails问题,而不是一个shiro。

我没有管理,以确保通过过滤器机制/object/view.gsp页面 - 这似乎是基于控制器/行动,因为没有涉及控制器...

但我没有找到另一种解决方案。将以下行添加到您的UrlMappings.groovy文件

"/$folder/${view}.gsp"(controller:'auth', action:'login') 

这将通过控制器发送您的.gsp文件。

+1

非常好的主意,非常感谢!但为了确保主要的“index.gsp”,你还必须添加“/${view}.gsp"(controller:'auth',action:'login') – Julian 2012-01-09 17:52:55