ユーザーの役割に応じて異なるホームページを作成しようとしています
grails.plugins.springsecurity.successHandler.defaultTargetUrl = "/home"
grails.plugins.springsecurity.securityConfigType="InterceptUrlMap"
grails.plugins.springsecurity.interceptUrlMap=[
....
....
'/User/**':['ROLE_USER'],
'/home/**':['ROLE_ADMIN','ROLE_USER'],
....
....
]
成功ハンドラーコントローラー「HomeController」を設定しました
その中で、役割ごとのホームページをリダイレクトします
import org.codehaus.groovy.grails.plugins.springsecurity.SpringSecurityUtils
class HomeController {
def index() {
if (SpringSecurityUtils.ifAllGranted('ROLE_ADMIN')) {
redirect controller: '...', action: '...'
return
}
if (SpringSecurityUtils.ifAllGranted('ROLE_USER')) {
redirect controller: 'user', action: 'show'
return
}
}
}
これで、ADMINプロファイルからログインすると、「HomeController」にヒットし、リダイレクトも同様に行われます
しかし、ユーザープロファイルからログインしようとすると、エラーspringSecurity.denied.message... が表示されます...