Как заблокировать контроллеры Grails spring-security-ui? - PullRequest
4 голосов
/ 21 октября 2011

Я создаю свое первое приложение Grails и использую Spring-security-core и spring-security-ui. Я заблокировал контроллеры, которые я создал в своем приложении, но осталась дыра в том факте, что любой не прошедший проверку подлинности пользователь может получить доступ к контроллерам spring-security-ui. Как правильно ограничить доступ этих контроллеров к определенным ролям?

Я рассматриваю возможность запуска s2ui-override на каждом из этих контроллеров и последующей реализации защищенных аннотаций на уровне класса. Это разумный подход?

1 Ответ

12 голосов
/ 21 октября 2011

Обычно я использую аннотации для контроллеров приложений и статические правила в Config.groovy для контроллеров, предоставляемых плагинами, такими как spring-security и spring-security-ui:

grails.plugins.springsecurity.controllerAnnotations.staticRules = [
    '/aclClass/**': ['ROLE_ADMIN'],
    '/aclSid/**': ['ROLE_ADMIN'],
    '/aclObjectIdentity/**': ['ROLE_ADMIN'],
    '/aclEntry/**': ['ROLE_ADMIN'],
    '/persistentLogin/**': ['ROLE_ADMIN'],
    '/requestmap/**': ['ROLE_ADMIN'],
    '/securityInfo/**': ['ROLE_ADMIN'],
    '/registrationCode/**': ['ROLE_ADMIN'],
    '/role/**': ['ROLE_ADMIN'],
    '/user/**': ['ROLE_ADMIN'],
    '/console/**': ['ROLE_ADMIN'],

    '/register/**': ['IS_AUTHENTICATED_ANONYMOUSLY']
]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...