2011-12-27 163 views
1

我试图在Grails中使用Spring Security Plugin建立一个只允许通过预认证机制进行身份验证的系统。如何在Grails/Spring Security插件中禁用/ login/auth

我想要发生的事情是,如果用户在未经过身份验证时尝试访问任何URL,它应该将它们带到拒绝访问的页面。

我现在正在做的事情是,Grails试图将它们转发到/ login/auth(然后Firefox说重定向永远不会完成)。但事情是,因为我只是一个Pre-Auth系统,所以没有登录页面。

这里是我的Config.groovy:

grails.plugins.springsecurity.interceptUrlMap = 
['/auth/*'  : 'IS_AUTHENTICATED_ANONYMOUSLY',  // so they can attempt to login 
'/**'   : 'IS_AUTHENTICATED_FULLY' 
] 

grails.plugins.springsecurity.providerNames = 
['customerPreauthAuthProvider'] 

grails.plugins.springsecurity.filterChain.chainMap = 
['/auth/customer' : 'customerSiteminderFilter',    // Customer login 
'/**'   : 'JOINED_FILTERS' // Go thru regular filter chain for all others 
] 

任何想法是如何得到它停止这样做呢?我已经从LoginController.groovy中删除了index和auth方法,因为它们不应该被需要。

+1

您的标题完全匹配标签。你能改变它来描述这个问题吗?而不是仅仅列出技术? – 2011-12-27 20:47:23

+1

标题已更改。对不起,关于那个... – user965697 2011-12-27 21:03:19

+0

好多了.. ta :) – 2011-12-27 21:05:22

回答

2

既然你在技术上还没有登录页面,那么你可以只更改以下配置选项:

auth.loginFormUrl =“/登录/ AUTH”

指向你的拒绝访问页面。