Защита сопоставления URL с помощью плагина ядра безопасности Grails Spring - PullRequest
1 голос
/ 13 марта 2012

Как говорится в заголовке, я пытаюсь защитить страницы, используя ядро ​​безопасности Spring. Рассмотрим следующее сопоставление URL (предположим, что существуют home.gsp, page1.gsp и page2.gsp):

"/"(view:'/home')
"/page1"(view:'/page1')
"/page2"(view:'/page2')

Теперь рассмотрим следующие параметры внутри Config.groovy:

grails.plugin.springsecurity.interceptUrlMap = [
    '/': ['IS_AUTHENTICATED_ANONYMOUSLY'],   
    '/**': ['IS_AUTHENTICATED_FULLY']        
]

Если я правильно понимаю, я смогу получить доступ к дому без какой-либо защиты, и я буду перенаправлен на страницу входа в систему, когда я попытаюсь получить доступ к /page1 или /page2. К сожалению, это не так. Я все еще могу получить доступ к странице 1 и странице 2 напрямую (например, http://localhost:8080/MyGrailsProject/page1).

Однако, если я попытаюсь использовать аннотации @Secured через действия контроллера, защита активируется (то есть запрос перенаправляется на страницу входа в систему). В чем проблема с моей конфигурацией? Как защитить карты URL?

Ответы [ 3 ]

2 голосов
/ 18 января 2013

У вас есть:

grails.plugin.springsecurity.interceptUrlMap

должно быть

grails.plugins.springsecurity.interceptUrlMap

Обратите внимание на плагины.

1 голос
/ 18 января 2013

Порядок важен, у вас должен быть самый ограничительный в верхней части interceptUrlMap.

1 голос
/ 13 марта 2012

Это подход по умолчанию, использовать аннотации. Но если вы предпочитаете использовать карту URL, вам нужно настроить:

grails.plugins.springsecurity.securityConfigType = "InterceptUrlMap"

См. Документы: http://grails -plugins.github.com / grails-spring-security-core / docs / manual / guide / single.html # 5.2% 20Simple% 20Map% 20in% 20Config.groovy

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...