2012-02-08 165 views
10

在Servlet的3.0投訴的應用程序服務器,我可以通過增加設置會話cookie(JSESSIONID)中HTTPOnly和安全標誌下面到web.xml:安全和的HttpOnly標誌的會話cookie的Websphere 7

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

然而,我正在使用的應用程序將部署在Websphere 7中,這是Servlet 2.5的投訴,如果我將上述內容添加到web.xml,則無法啓動。

是否有任何其他聲明方式或設置Websphere 7配置打開會話cookie的HttpOnly和安全標誌?

如果不是,那麼以編程方式完成該項目的最佳方法是什麼?

回答

8

我認爲在WebSphere 7中,您可能需要深入研究管理控制檯。作爲有史以來WebSphere文檔似乎不佳,但似乎暗示設置com.ibm.ws.security.addHttpOnlyAttributeToCookies屬性: com.ibm.ws.security.addHttpOnlyAttributeToCookies

兩個安全標誌和中HTTPOnly標誌被設置在WebSphere Application Server屬性啓用。

我發現this,我希望它適用於WAS7。你可以嘗試請(我只有在我的系統上瞬間被8):

JSESSIONID的cookie:

安全標誌:

安全標記可以被設置通過選擇AppServer - > [Server Name] - > Web Container Settings-> Session Management,在WebSphere Application Server 管理界面中。選中複選框 「限制Cookie到HTTPS會話」。

中HTTPOnly標誌:

HTTPOnly屬性則目前無法在這個cookie設置。此 在IBM網站上註冊爲APAR PK98436。此APAR 的修補程序當前的目標是包含在尚未提供的修訂包6.1.0.31和7.0.0.9, 中。通過使用此APAR,可以通過屬性名稱在com.ibm.ws.webcontainer.httpOnlyCookies上的JSESSIONID cookie上設置HTTPOnly 標誌。有關啓用WebContainer自定義屬性的說明,請參閱以下技術說明 。

com.ibm.ws.webcontainer.httpOnlyCookies屬性記錄在WAS 7幫助網站上。

+0

感謝您的鏈接。但是,從我的理解中,JSESSIONID(等等)不會受到該屬性的影響。對? – mmutilva 2012-02-08 12:56:15

+0

現在編輯原文以專門解決JSESSIONID – planetjones 2012-02-08 13:07:52

+0

謝謝。我認爲第二個鏈接是針對Tivoli的,不是嗎?你從哪裏得到「Both Secure flag和HTTPOnly標誌是由......啓用的」引用? – mmutilva 2012-02-08 18:10:55

0

在WebSphere 7,您可以在管理控制檯下服務器>的WebSphere應用服務器>[服務器名稱]>會話管理(在 「容器設置」)>啓用Cookie發現這>將Cookie限制爲HTTPS會話

3

爲了安全標誌設置爲JSESSIONID的cookie(同樣爲WebSphere和7.X):

  • 登錄登錄WebSphere管理控制檯
  • 導航到服務器>服務器類型> WebSphere應用程序服務器
  • 單擊服務器名稱(默認爲server1的
  • 點擊鏈接Web容器設置> Web容器
  • 點擊鏈接會話管理
  • 點擊鏈接啓用Cookie。該位利爾有點混亂,你必須 點擊文本沒有對複選框
  • 選擇選項(複選框)限制cookies來HTTPS會話
  • 保存改變

將WebSphere 8.x中的HttpOnly標誌設置爲JSESSIONID Cookie

  • 登錄登錄WebSphere管理控制檯
  • 導航到服務器>服務器類型> WebSphere應用程序服務器
  • 單擊服務器名稱(默認爲server1的
  • 點擊鏈接Web容器設置> Web上集裝箱
  • 點擊鏈接會話管理
  • 點擊鏈接打開Cookies。該位利爾有點混亂,你必須點擊文字不上的複選框
  • 選擇選項(複選框)設置會話cookie中HTTPOnly以幫助防止跨站點腳本攻擊
  • 保存改變

要在WebSphere 7設定的HttpOnly標誌。x到JSESSIONID餅乾

  • 登錄登錄WebSphere管理控制檯
  • 導航到服務器>服務器類型> WebSphere應用程序服務器
  • 單擊服務器名稱(默認爲server1的
  • 點擊鏈接Web容器設置> Web容器
  • 點擊鏈接企業的性質定製
  • 點擊按鈕
  • 輸入com.ibm.ws.webcontainer.httpOnlyCookies:*(僅Http將在所有的cookies設置不僅JSESSIONID)
  • 點擊OK按鈕
  • 保存改變