18

デフォルトでは、Glassfish v3 はセッション Cookie に httpOnly フラグを設定しません (通常どおり で作成された場合request.getSession())。

method があることは知っていますが、javax.servlet.SessionCookieConfig.setHttpOnly()それが最善の方法であるかどうかはわかりません。

ところで、もちろん、サーブレット自体 (init() など) では実行できません。

java.lang.IllegalStateException: PWC1426: 
Unable to configure httpOnly session tracking cookie property for 
servlet context /..., because this servlet context has already been initialized

一般に、web.xml などの構成オプションを使用することをお勧めします。

4

2 に答える 2

23

これは、Servlet 3.0 を介してサポートされweb.xmlます (「 」を参照web-common_3_0.xsd)。

<web-app>
  <session-config>
    <cookie-config>
      <!--             
        Specifies whether any session tracking cookies created 
        by this web application will be marked as HttpOnly
      -->
      <http-only>true</http-only>
    </cookie-config>
  </session-config>
</web-app>
于 2010-06-13T20:13:33.183 に答える
3

<secure>true</secure>を追加してセキュリティを強化することもできます。

<session-config>
    <cookie-config>
        <http-only>true</http-only> 
        <secure>true</secure>
    </cookie-config>
</session-config>
于 2014-10-15T13:40:31.533 に答える