Привет всем, Я использую Tomcat 6.0.14 и хотел бы знать, чтобы реализовать систему, которая позволит нам отправлять пользователям ссылку: mysite.com?token=12345678912334333(long string continue), но это позволит пользователю автоматически регистрироваться.Внедрение пользовательской аутентификации с помощью Tomcat
ответ
Если у вас есть другие причины, характерные для Tomcat, или вы не можете изменить свое веб-приложение, тогда может быть проще использовать собственный фильтр для проверки подлинности (JAAS или иначе). Например:
- http://www.kopz.org/public/documents/tomcat/jaasintomcat.html
- http://securityfilter.sourceforge.net/
С пользовательского фильтра, вы можете проверить подлинность любым способом, который вы хотели, чтобы относительно простым способом.
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. Это отличается от простого аутентификации простым маркером, но если это то, что вы ищете, вы знакомы с JAASRealm от Tomcat? Вам просто нужно написать свой собственный LoginModule для аутентификации токена.
Это, вероятно, само собой разумеется, что, используя логин на основе токенов по электронной почте небезопасно, и поэтому не подходит для всех типов приложений.
Я думаю, вам нужно реализовать логику самостоятельно, то есть ссылку направлять пользователя к сервлету или что-то вроде этого, которое распознает эту ссылку, присоединяется к ней с пользователем, создает объект сеанса и перенаправляет пользователя внутри вашего приложения ,
Надеется, что это помогает
- 1. Loopback - Внедрение пользовательской аутентификации
- 2. Внедрение аутентификации HMAC
- 3. Внедрение пользовательской аннотации весной
- 4. Внедрение пользовательской арифметической системы
- 5. Внедрение пользовательской клавиатуры Android
- 6. Tomcat 7 JSP-страница: Избегайте ошибку 500 при аутентификации в Tomcat с помощью Шибболета сеанса аутентификации
- 7. Внедрение пользовательской навигации с помощью помощника представления через ServiceManager
- 8. Внедрение собственной регистрации пользователя и аутентификации с помощью IdentityServer
- 9. Внедрение образца кода для аутентификации в Gmail с помощью OAuth2
- 10. Внедрение JWT-аутентификации в Android с помощью диспетчера учетных записей
- 11. Внедрение взаимной аутентификации с помощью API LDAP и SSPI
- 12. Symfony2 метод пользовательской аутентификации
- 13. Внедрение пользовательской гиперссылки в kvm
- 14. Jira Внедрение пользовательской страницы/кнопки
- 15. Внедрение встроенной пользовательской модели Django
- 16. Модуль пользовательской аутентификации Glassfish?
- 17. Поставщик пользовательской аутентификации WCF
- 18. Внедрение зависимостей с использованием пользовательской аннотации
- 19. Внедрение PayPal IPN с использованием пользовательской корзины
- 20. Внедрение аутентификации Clientside с Apache James
- 21. Внедрение пользовательской формулы в SQL
- 22. с использованием аутентификации asp.net с пользовательской аутентификацией
- 23. Внедрение Tomcat Realm с аутентификацией LDAP и авторизацией JDBC
- 24. Использование пользовательской аутентификации пользователя WCF (UserNamePasswordValidator) с помощью Java
- 25. MSSQL проблема аутентификации Окно с сервером Tomcat
- 26. Перемещение с пользовательской аутентификации на Open ID
- 27. Spring - вызов пользовательской аутентификации-провайдера с контроллера
- 28. Rails gem для пользовательской аутентификации
- 29. Внедрение единой службы выписки с помощью SimpleSAMLPHP
- 30. Внедрение двухфакторной аутентификации в iPad App
я на самом деле смотрел на JAASRealm, но с этим я не уверен, как установить request.getRemoteUser. Похоже, что это решение Securityfilter.org каким-то образом. Я могу изменить аутентификацию наших сайтов, чтобы использовать request.getPrincipal довольно легко. Просто интересно, есть ли простой способ написания request.getRemoteUser() Я думаю, –
Request.getRemoteUser предназначался для получения аутентификации, предоставляемой контейнером (Tomcat). JAAS отличается. Трудно программно подавать аутентифицированный пользователь/главный/субъект JAAS обратно в контейнер, чтобы использовать getRemoteUser. В Tomcat, я думаю, для этого требуется написание специального клапана или другого крючка низкого уровня. Если вам действительно не нужен getRemoteUser, может быть проще сохранить пользователя/участника/тему в сеансе самостоятельно и получить его непосредственно из сеанса, где это необходимо в вашем коде сервлета. – kaliatech