嘿所有, 我正在使用Tomcat 6.0.14并想知道实现一个系统,允许我们向用户发送一个链接,例如mysite.com?token=12345678912334333(long string continue),但这将允许用户自动登录。
答案 0 :(得分:3)
除非您有其他特定于Tomcat的原因,或者您无法修改Web应用程序,否则最简单的方法是使用自定义过滤器进行身份验证(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来验证令牌。
毋庸置疑,通过电子邮件使用基于令牌的登录本质上是不安全的,因此不适合所有类型的应用程序。
答案 1 :(得分:0)
我猜你必须自己实现逻辑,即链接引导用户访问servlet或识别链接的链接,将其与用户连接,创建会话对象并在用户内部重定向用户。
希望这有帮助