Я перемещаюсь от grails 2.2.2 до grails 2.3.4, чтобы избежать ошибки в 2.2.2, где текстовое значение в сообщениях свойств безопасности весны не отображается, но я сталкиваюсь со всеми проблемами. Материал, который работал раньше, теперь нет.Как сделать логин/страницу в Grails Spring Security 2.0 встроенным экраном?
ПРОБЛЕМА
При запуске приложения Grails, начальная страница по умолчанию index.gsp который является стандартной функциональностью, но после установки и настроек основных родник безопасности, пружинная безопасность Ldap и весной securiy Ui плагины I хотел бы сделать /login/auth моей страницей по умолчанию.
В предыдущем выпуске я это сделал через конфигурационный файл UrlMappings.groovy просто комментируя, замены или удаления этой строки
"/"(view:"/index")
для этого одного
"/"(view:"/login/auth")
My Config .groovy установлен таким образом, что если аутентификация удастся забрать меня на домашнюю страницу
grails.plugin.springsecurity.userLookup.userDomainClassName = 'security.Person'
grails.plugin.springsecurity.userLookup.authorityJoinClassName = 'security.PersonAuthority'
grails.plugin.springsecurity.authority.className = 'security.Authority'
grails.plugin.springsecurity.requestMap.className = 'security.Requestmap'
grails.plugin.springsecurity.securityConfigType = 'Requestmap'
grails.plugin.springsecurity.successHandler.defaultTargetUrl = '/home/'
и мои записи Requestmap в Bootstrap (если они имеют какое-либо значение для этого вопроса являются):
for (String url in [
'/', '/index', '/index.gsp', '/**/favicon.ico',
'/**/js/**', '/**/css/**', '/**/images/**',
'/login', '/login.*', '/login/*',
'/logout', '/logout.*', '/logout/*']) {
new Requestmap(url: url, configAttribute: 'permitAll').save()
}
new Requestmap(url: '/home/*', configAttribute: 'IS_AUTHENTICATED_FULLY').save()
Оказывается, что, когда я это сделать ... Eureka Логин/авторизация приходит как только приложение запускается, но когда я помещаю правильные удостоверения подлинности, он, похоже, не аутентифицируется, он делает «небольшое небольшое мерцание», и он снова показывает себя.
Однако, если я удалить эту строку
"/"(view:"/login/auth")
и поставить этот назад в
"/"(view:"/index")
, а затем, когда я перезапустить приложение I вручную входа/Идент и поставить правильный учетные данные, то он правильно ведет меня на домашнюю страницу.
ВОПРОСЫли я пропустить любой конфигурации установки в любом месте, что бы сделать логин/аутентификации первую страницу (но также позволяет мне подлинность)?
Я не уверен, что это должен быть отдельный размещенный вопрос, но теперь по дизайну страница входа в систему является частью плагина, прежде чем она была сгенерирована и часть моего кода, и я мог бы стилизовать по моей воле. Должен ли я скопировать пасту LoginController и Auth.gsp в мое приложение, чтобы настроить представление или есть лучший предпочтительный способ?
Заранее спасибо.
Когда вы сказали «Spring Security работает отслеживание в URL перенаправления», вы освещаете до лампочки. Я смог настроить экран входа в систему, просто создав папку для входа под представлениями и свой собственный auth.gsp. Не нужно копировать LoginController на мою базовую базу – Viriato
Спасибо, что «Spring Security работает, отслеживая URL-адрес реферала» помогла мне разобраться с проблемой моего приложения. Страница входа в систему была перенаправлена на URL-адрес, который был вызван Javascript на странице по умолчанию, которая была показана до того, как пользователи перешли на страницу входа по ссылке. Оказывается, этот URL-адрес не был доступен скрипту, поскольку он был защищен Spring Security; предположительно, при неудачной попытке Spring Security запомнила URL-адрес после входа в систему. С вашей подсказкой я добавил этот URL-адрес в список доступных страниц без входа. Все хорошо. – HumanInDisguise