2015-09-18 4 views
0

В моих проектах Grails я использую функцию Switch User (только для пользователей ROLE_ADMIN) для тестирования приложения, моделирующего различных пользователей.Протестируйте настоящего пользователя (в отличие от switchUser) в Spring Security staticRules

У меня также есть веб-консоли, которое ограничено административными пользователями:

grails.plugin.springsecurity.controllerAnnotations.staticRules = [ 
    ... 
    "/console/**": ["ROLE_ADMIN"], 
    "/plugins/console*/**": ["ROLE_ADMIN"], 
    ... 
] 

Но пока я имитируя другого пользователя, мой доступ к консоли аннулирован.

Как изменить эти два статических правила, чтобы они проверяли роль (или имя пользователя) реального пользователя, в отличие от того, что вы вышли из строя?

ответ

0

Вместо того, чтобы изменять, что пользователь проверяет на роли, вы также можете добавить ROLE_ADMIN к олицетворенному пользователю.

Посмотрите это сообщение о том, как настраивать персонализированные роли для лиц без имени. http://beckje01.com/blog/2015/04/18/springsecurity-impersonate-users-custom-roles/

+0

Спасибо, но я определенно не делаю _not_ хочу добавить побочные роли для олицетворенных пользователей, иначе тесты, которые я выполняю с ними, бесполезны! – Tobia