Как нести строковое значение во время аутентификации, используя Spring Security OpenID - PullRequest
0 голосов
/ 13 сентября 2011

Я работаю над этим в течение нескольких дней и надеюсь, что кто-нибудь может мне помочь.

Есть три требования для обработки аутентификации.

  1. Аутентификация с использованием OpenID, страница входаэто login.jsp.После успешного входа в систему отобразите имя пользователя и адрес электронной почты по адресу login-succ.jsp
  2. В файле login.jsp есть поле ввода, мне также необходимо отобразить значение mymessage в файле login-succ.jspесли вход выполнен успешно
  3. После успешного входа пользователь находится в файле login-succ.jsp со своим именем пользователя, адресом электронной почты и значением mymessage.Если пользователь обновит страницу login-succ.jsp, эти три значения должны отобразиться снова.

Я пытался выполнить эти три требования, используя CustomOpenIDAuthenticationFilter в моем другом сообщении , но если я сохраню сообщение в сеансе и в нем будет два экземпляра login.jsp, дваэкземпляры будут перезаписывать значения сообщений друг другу после действия обновления.Я не знаю, делаю ли я все неправильно.Итак, кто-нибудь может дать мне несколько советов о том, как выполнить эти три требования, используя Spring security и Spring MVC.

Спасибо.

1 Ответ

0 голосов
/ 15 сентября 2011

Для меня это похоже на дизайн, который требует какой-то инъекционной атаки (принятие параметра URL, который отображается на странице вслепую пользователю, является действительно плохой идеей).

Вместо этого я вставляю сообщение в HttpSession до того, как пользователь будет перенаправлен на вход в систему OpenID, и получаю сообщение после его успешного перенаправления. Очевидно, вам понадобится код для очистки сообщения из сеанса при сбое, выходе из системы и т. Д.

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