在web.xml中,您可以通过以下方式确保会话cookie(JSESSIONID)设置为仅限SSL的cookie:
<session-config>
<cookie-config>
<secure>true</secure>
</cookie-config>
</session-config>
有没有办法在创建会话时以编程方式实现相同的目标?
我找到了答案。这是为了他人的利益:
public void contextInitialized(ServletContextEvent servletContextEvent) {
ServletContext servletContext = servletContextEvent.getServletContext();
SessionCookieConfig scc = servletContext.getSessionCookieConfig();
scc.setSecure(true);
}
显然,代码应添加到应用的上下文侦听器中。