Я интегрирую Gigya с веб-приложением под управлением Acegi.
У меня работает, что Gigya на стороне клиента может аутентифицировать существующего пользователя, а затем пропустить сообщение формы входа и нажать метод контроллера, чтобы сообщитьна сервере, что аутентификация пользователя была выполнена Gigya.
Используя следующий код в моем контроллере, я могу сказать Acegi, что пользователь аутентифицировался.
def user = com.playhardsports.football.web.admin.auth.User.find("from User where username=?", [UID])
def authorities = [new GrantedAuthorityImpl('ROLE_USER')] as GrantedAuthority[]
def userDetails = new org.codehaus.groovy.grails.plugins.springsecurity.GrailsUserImpl(UID, fakePassword, true, true, true, true, authorities, user)
def authentication = new UsernamePasswordAuthenticationToken(userDetails, fakePassword, authorities)
SecurityContextHolder.context.authentication = authentication
Проблема IУ меня сейчас есть то, что я не знаю, куда перенаправить пользователя после аутентификации.
Распространенный сценарий состоит в том, что пользователь заходит на защищенную страницу, и Acegi перенаправляет их в форму входа.В моей форме входа в систему у меня также есть элементы управления Gigya для проверки пользователя.Конечно, тем временем нормальный поток Acegi будет после входа в систему перенаправлять обратно на исходную защищенную страницу.
Поэтому я ищу, как получить доступ к этому URL, и если не было URL, потому что человекпошел прямо к входу в систему, а затем, как найти URL по умолчанию, который настроил Acegi.
Спасибо.