Я работаю над проектом grails 2.3.8
и пытаюсь настроить Role Hierarchy
. Я пытаюсь изменить значение по умолчанию rolePrefix = 'ROLE_'
в resources.groovy
с rolePrefix = 'PERM_'
. Я понимаю, что, чтобы сделать эту работу, мне нужно сделать следующие изменения в моем Config.groovy
во что-то вроде:Как настроить rolePrefix в Grails с помощью Spring Security plugin?
grails.plugins.springsecurity.userLookup.userDomainClassName = 'tpo.core.acl.AdminAccount'
grails.plugins.springsecurity.userLookup.authorityJoinClassName = 'tpo.core.acl.AdminAccountPermission'
grails.plugins.springsecurity.authority.className = 'tpo.core.acl.Permission'
И установить иерархию, мне нужно, чтобы добавить это тоже в моем Config.groovy
grails.plugins.springsecurity.roleHierarchy = '''
PERM_ACCOUNT_ALL > PERM_ACCOUNT_CREATE
PERM_ACCOUNT_ALL > PERM_ACCOUNT_READ
PERM_ACCOUNT_ALL > PERM_ACCOUNT_UPDATE
PERM_ACCOUNT_ALL > PERM_ACCOUNT_DELETE
'''
Так что в моем контроллере, это что-то вроде,
@Secured(['PERM_ACCOUNT_ALL'])
def index() {
redirect(action: "list", params: params)
}
Когда я пытаюсь запустить мое приложение, и получить доступ к index()
действия моего контроллера, я был предложено из-за присутствия @Secured(), но после успешного входа в систему я еще не смог получить доступ к действию index()
, и он отображается, к сожалению, у вас нет прав для просмотра этой страницы. Разрешение было назначено пользователю, с которым я вошел в систему, но тем не менее я не смог получить к нему доступ.
Где я пропущу?
Большое вам спасибо за ответ. Мы можем настроить префикс роли в grails 2.0.4 раньше, но теперь, следуя той же настройке, я больше не могу ее применять, используя grails 2.3.8, даже при использовании той же самой версии весенней безопасности, что и 1.2.7.3. Я потерял o_o – chemilleX3