我想开发一个能够通过其他服务器上的HTTP协议进行身份验证的java servlet。该服务器将cookie发送回我的servlet,我想将cookie转发回浏览器并将浏览器重定向到另一个URL。
我无法弄清楚如何通过servlet拦截和发送返回cookie。
您对使用的方法或类有什么建议吗?
答案 0 :(得分:1)
这当然是非法的;篡改另一个域名的cookie。
Java对Open-ID有很好的支持,这可能恰好适用于您的情况。
对于java站点,会话ID可以用作cookie和URL参数(经常是JSESSIONID)。在这种情况下,您可以使用JSESSIONID参数。
网站通常会有一个登录页面继续浏览某些页面(例如login.html?url = ...)。 在这种情况下,您可以尝试重定向到登录表单GET-submit。 要查找该URL:调用已注销的书签URL。
我怀疑是否存在这样的循环漏洞。
答案 1 :(得分:0)
我没有理解你的意思'拦截cookie',但发回cookie非常简单,只需将cookie添加到响应对象。
Cookie cookie = new Cookie("name", value);
response.addCookie(cookie);
然后转发您的请求:
request.getRequestDispatcher(path).forward(request, response)
希望它对你有所帮助。