我有一个 Web 应用程序,用户可以通过代理 sevlet 访问它——更大的 Web 应用程序的一部分。浏览器和更大的应用程序之间的通信由 ssl 加密。从我的嵌入式应用程序中,我想设置一个指示用户会话的安全 cookie。代理 servlet 和我的 Web 应用程序之间的通信未加密,因此当我设置会话 id cookie 时,它没有安全标志。我的应用程序在 tomcat 上运行,并且来自这个 tomcat 的响应通过代理 servlet 代理到客户端的浏览器。
这个 cookie 是否安全且无法被其他人劫持,尽管它并未被指示为安全?在这种情况下,浏览器可以在不安全的连接中发回 cookie 吗?
编辑:
我将指定该解决方案的更多架构以使其清楚:
有 2 个 Web 应用程序,每个应用程序都有自己的会话:1) 一个用户可以直接访问,并且它与浏览器之间的通信由 SSL 加密。(应用程序 X) 2)第二个用户无法访问,但由应用程序 X 的 servlet 代理(应用程序 Y) Servlet 也代理 http 标头。
架构如下图所示:
客户端浏览器| <-SSL-> |应用程序 X(代理 servlet)| <-内部网络,无 SSL -> |应用程序 Y
我想从表示会话的应用程序 Y 在客户端浏览器中设置 cookie。Cookie 标头从应用程序 Y 获取到 X 并设置到客户端的浏览器中,但不幸的是,此标头没有安全标志。我不确定它是否会在安全连接中由浏览器发回。