2014-09-19 53 views
0

你好我正在開發一個Java EE項目,我希望在註冊頁面有https連接。我通過相應地編輯server.xml文件來配置它,以找到我找到的教程,它工作正常。我的問題是它不會關閉。如果我打開一個頁面,其中https被觸發,那麼在這之後打開的所有頁面都將是https而不是http?這是正常的方式https的行爲或我做錯了什麼?https連接不關閉java EE

繼承人是從server.xml中的相關內容:

<Connector SSLEnabled="true" clientAuth="false" keystoreFile="c:\Users\Mario\.keystore" keystorePass="123456" maxThreads="150" port="8443" protocol="HTTP/1.1" scheme="https" secure="true" sslProtocol="TLS"/> 

,這裏是我的項目

<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>Viewpoint Secure URLs</web-resource-name> 
     <url-pattern>/user/*</url-pattern> 
    </web-resource-collection> 
    <user-data-constraint> 
     <transport-guarantee>CONFIDENTIAL</transport-guarantee> 
    </user-data-constraint> 
    </security-constraint> 
    <servlet> 

「用戶」目錄下的頁面與HTTPS打開的web.xml中,但那麼項目的其他頁面都可以通過https打開,即使index.xhtml位於用戶文件夾的上方。

Thx提前!

回答

0

the documentation

ServletSecurity.TransportGuarantee CONFIDENTIAL

所有的用戶數據必須是 (通常使用SSL/TLS)由傳輸加密。

服務器可能會設置Strict-Transport-Security標頭來強制執行「所有用戶數據」約束。

+0

是的,但這個規則應該只應用於用戶下的頁面而不是整個項目。或者我沒有得到什麼? – JmRag 2014-09-19 13:41:25

+0

「Strict-Transport-Security」標頭適用於整個域。 – 2014-09-19 14:43:09