Вход в JASIG CAS программно (с помощью Liferay)

Я использую JASIG CAS для входа в SSO с помощью liferay. Теперь он работает нормально, когда я напрямую пытаюсь войти в систему, потому что перенаправление есть с CASFilter. Он перенаправляет на страницу входа в систему CAS, а после успешного входа в систему он перенаправляет на предоставленный URL-адрес нашего приложения.

Теперь я хочу войти в CAS, используя портлет входа в систему liferay. Этот портлет предоставляет логин в liferay, такой же, как логин, но его URL-адрес отправки отличается. Итак, перенаправление CAS здесь не работает.

И мне не нужно здесь приглашение для входа в CAS. После входа в liferay я хочу войти прямо в CAS. Я проверил это с помощью Apache HttpClient, но это не работает. Я пробовал использовать метод POST со всеми полями ввода. Проблема в том, что CAS использует одно скрытое поле с именем lt, которое представляет собой случайную строку каждый раз, когда загружается страница входа. Поэтому, когда я программно обращаюсь к странице, я не могу прочитать это поле.

Если мы дадим более старый lt, то он тоже не работает.

Так, любой другой способ кто-нибудь видел?


person Parth    schedule 27.08.2010    source источник
comment
на одном есть идея? по крайней мере, дайте несколько советов... Есть ли способ, которым сервер CAS может предоставить новый входной билет по запросу? как в этом URL, wiki.jasig.org/display/CASUM/RESTful+API ?   -  person Parth    schedule 27.08.2010


Ответы (1)


Я направил вопрос в свою компанию Smile.fr. См. ответ одного из моих техников в переводе ниже.

Поле lt — это входной билет, чтобы получить доступ к серверу CAS перед инициацией аутентификации.

Чтобы избежать формы CAS:

  1. Получите один входной билет на сервере CAS
  2. Запрос на авторизацию Sen с учетными данными, lt и обратным URL-адресом службы (тот, который мы только что вошли в систему)

Прохождение через сервер CAS является обязательным, поскольку только он может отправлять TGC, запрошенные для получения взамен сервисных билетов.

Несколько ссылок:

https://wiki.jasig.org/display/CAS/Использование+CAS+без+экрана+CAS+логин+экран

https://wiki.jasig.org/display/CAS/Использование+CAS+без+экрана+логина+

«Почему бы не сделать это» в первой ссылке заявлено как хорошая идея.

person PhBri for SebChe    schedule 30.08.2010