0

ユーザーの役割に応じて異なるホームページを作成しようとしています

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... が表示されます...

4

2 に答える 2

0
'/user/**':['ROLE_USER'],

代わりは

'/User/**':['ROLE_USER'],
于 2013-10-01T11:19:04.540 に答える