如何以编程方式在 cookie 上设置安全标志
How to set secure flag on cookie programatically
我知道我们可以这样做:
<session-config>
<cookie-config>
<secure>true</secure>
</cookie-config>
</session-config>
但我想要实现的是根据一些配置设置此标志(true 或 false)。
我们应该使用过滤器吗?如何使用?
谢谢
假设您在 servlet 3.0+ 环境中,并且您不想使用 web.xml
指定 cookie-secure-flag 而是以编程方式设置它:
实现 ServletContextListener 并在 web.xml
中或通过注解注册它。
在其 contextInitialized
方法中,从您的配置中评估您的安全标志并将其设置在 SessionCookieConfig
:
public void contextInitialized(ServletContextEvent sce) {
boolean secure = ...
sce.getServletContext().getSessionCookieConfig().setSecure(secure);
}
我知道我们可以这样做:
<session-config>
<cookie-config>
<secure>true</secure>
</cookie-config>
</session-config>
但我想要实现的是根据一些配置设置此标志(true 或 false)。
我们应该使用过滤器吗?如何使用?
谢谢
假设您在 servlet 3.0+ 环境中,并且您不想使用 web.xml
指定 cookie-secure-flag 而是以编程方式设置它:
实现 ServletContextListener 并在 web.xml
中或通过注解注册它。
在其 contextInitialized
方法中,从您的配置中评估您的安全标志并将其设置在 SessionCookieConfig
:
public void contextInitialized(ServletContextEvent sce) {
boolean secure = ...
sce.getServletContext().getSessionCookieConfig().setSecure(secure);
}