大家好,我正在使用 Tomcat 6.0.14,并且想知道实现一个系统,该系统允许我们向用户发送链接,例如 mysite.com?token=12345678912334333(长字符串继续),但这将允许用户自动登录。
问问题
14532 次
2 回答
3
除非您有其他特定于 Tomcat 的原因,或者您无法修改 Web 应用程序,否则使用自定义过滤器进行身份验证(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 进行了标记。这与仅使用简单令牌进行身份验证不同,但如果这就是您要寻找的,您是否熟悉 Tomcat 的 JAASRealm?您只需要编写自己的LoginModule来验证令牌。
不用说,通过电子邮件使用基于令牌的登录本质上是不安全的,因此不适用于所有类型的应用程序。
于 2011-01-28T21:34:53.757 回答
0
我猜你必须自己实现逻辑,即链接将用户引导到一个 servlet 或类似的东西,它可以识别该链接,与用户连接,创建一个会话对象并在你的应用程序中重定向用户。
希望这可以帮助
于 2011-01-28T21:39:11.097 回答