我在 SeedStack 应用程序中使用 Web 会话,但需要通过 httpOnly 标志保护会话 cookie。
由于没有配置选项,如何使用当前版本实现这一点?
目前无法配置 Undertow 使用的会话 cookie,但我添加了相关选项以使其在即将发布的版本(4 月底的 20.4)中成为可能。
现在,作为一种解决方法,您可以实现一个ServletContainerInitializer来手动配置会话 cookie:
public class MyServletContainerInitializer implements ServletContainerInitializer {
@Override
public void onStartup(Set<Class<?>> classes, ServletContext servletContext) {
servletContext.getSessionCookieConfig().setHttpOnly(true);
}
您的课程必须在META-INF/services/javax.servlet.ServletContainerInitializer
文件中注册:
org.myorg.myproject.MyServletContainerInitializer
请注意,您可以使用Seed.baseConfiguration()
. 这使得使用应用配置更改 cookie 选项成为可能。