解决;加密会话(ssl)cookie中缺少安全属性“;用Java
最近,IBM Security AppScan发现加密会话(ssl)cookie中缺少安全属性的问题。报告如下: 此应用程序由Java编写,我添加了一个过滤器来设置所有cookie的安全性,代码:解决;加密会话(ssl)cookie中缺少安全属性“;用Java,java,security,cookies,bluemix-app-scan,Java,Security,Cookies,Bluemix App Scan,最近,IBM Security AppScan发现加密会话(ssl)cookie中缺少安全属性的问题。报告如下: 此应用程序由Java编写,我添加了一个过滤器来设置所有cookie的安全性,代码: public class BasicFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { } @Override public void d
public class BasicFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) servletRequest;
Cookie[] cookies = req.getCookies();
HttpServletResponse resp = (HttpServletResponse) servletResponse;
if( cookies != null && cookies.length > 0) {
for (int i = 0; i < cookies.length; i++) {
cookies[i].setSecure(true);
cookies[i].setHttpOnly(true);
resp.addCookie(cookies[i]);
}
}
filterChain.doFilter(req,resp);
}
@Override
public void destroy() {
}
公共类基本过滤器实现过滤器{
@凌驾
public void init(FilterConfig FilterConfig)抛出ServletException{
}
@凌驾
public void doFilter(ServletRequest ServletRequest、ServletResponse ServletResponse、FilterChain FilterChain)抛出IOException、ServletException{
HttpServletRequest req=(HttpServletRequest)servletRequest;
Cookie[]cookies=req.getCookies();
HttpServletResponse resp=(HttpServletResponse)servletResponse;
如果(cookies!=null&&cookies.length>0){
for(int i=0;i
}
当所有Cookie响应两次时,它会工作,并且会尝试多次登录(使用SSO登录):
感谢你们的善意帮助,以及我如何才能确保安全并解决cookie问题,希望你们能给我一些解决这个问题的想法。
谢谢 同样的问题也发布在IBM支持论坛上。您应该查看配置修复程序。请看这里
此外,单点登录(sso)设置的大多数cookie,当我在本地测试时,由于我没有在本地启用sso,所以没有cookie问题,希望此消息能帮助您。