Реализация пользовательской аутентификации с Tomcat - PullRequest
3 голосов
/ 28 января 2011

Привет всем, Я использую Tomcat 6.0.14 и хотел бы узнать, как внедрить систему, которая позволяла бы нам отправлять пользователям ссылку, например, mysite.com?token=12345678912334333 (продолжение строки продолжалось), но это позволило бы автоматически войти в систему пользователя. ,

Ответы [ 2 ]

3 голосов
/ 29 января 2011

Если у вас нет других причин, характерных для Tomcat, или вы не можете изменить свое веб-приложение, тогда может быть проще использовать пользовательский фильтр для аутентификации (JAAS или иным образом).Например:

С помощью пользовательского фильтра вы можете проходить аутентификацию любым способом на относительнопрямой путь.

public void doFilter(ServletRequest request,
                     ServletResponse response,
                     FilterChain chain) 
  throws IOException, ServletException {

    String token = request.getParameter("token");
    if (token != null) {
      doAuthentication(token);
    }

    chain.doFilter(request, wrapper);
}

Вы отметились с JAAS.Это отличается от простой аутентификации с помощью простого токена, но если это то, что вы ищете, знакомы ли вы с Tomcat JAASRealm?Вам просто нужно написать свой LoginModule для аутентификации токена.

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

0 голосов
/ 29 января 2011

Полагаю, вам необходимо реализовать логику самостоятельно, то есть ссылка, которая направляет пользователя к сервлету или чему-то в этом роде, который распознает эту ссылку, присоединяет ее к пользователю, создает объект сеанса и перенаправляет пользователя внутри вашего приложения.

Надеюсь, это поможет

...