Отсутствует атрибут HttpOnly в файле cookie сеанса


В sign.jsp я написал следующее, чтобы, если пользователь уже вошел в систему, он сразу же был бы перенаправлен на свой home page

<%
try{

HttpSession session1 = request.getSession(false);

if(session1.getAttribute("authenticated")!=null &&  
 session1.getAttribute("authenticated").equals(true))
{
response.sendRedirect("userhome.jsp");
}
else{

// users have to login here
}
%>

Сканирование безопасности говорит, что Missing HttpOnly Attribute in Session Cookie в sign.jsp.

Если я задам: <Context useHttpOnly="true"> ... </Context>

В : C:Program FilesApache Software FoundationApache Tomcat 6.0.20conf

Тогда будет ли моя проблема решена или что еще я должен сделать? Любое предложение очень ценится
3 3

3 ответа:

Если вы используете сервлет 3.0. Чем В Servlet 3.0 (Java EE 6) введен стандартный способ настройки атрибута HttpOnly для файла cookie сеанса, применяя следующую конфигурацию в web.xml

<session-config>
 <cookie-config>
  <http-only>true</http-only>
 </cookie-config>
<session-config>

Другой подход -

Cookie cookie = new Cookie(cookieName, cookieValue);
cookie.setHttpOnly(true);
httpResponse.addCookie(cookie); 

Прочитайте эту статью https://access.redhat.com/solutions/338313

Я думаю, что вы должны установить

<Context cookies="true" crossContext="true">
  <SessionCookie secure="true" httpOnly="true" />

Атрибуты в "$PROFILE\deploy\jbossweb.sar\контекст.xml "