如何以编程方式在cookie上设置安全标志

时间:2016-02-02 21:07:38

标签: java security servlets cookies servlet-3.0

我知道我们可以这样做:

<session-config>
 <cookie-config>
 <secure>true</secure>
 </cookie-config>
</session-config>

但我想要实现的是根据某些配置设置此标志(true或false)。

我们应该使用过滤器吗?

由于

1 个答案:

答案 0 :(得分:5)

假设您处于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);
}