我用servlet和JSP玩弄。我想創建一個簡單的應用程序。進入後會有登錄頁面。用戶可以輸入他的登錄名/密碼或自己註冊。我想知道,如果我想要確保密碼被「攔截」,我應該使用https嗎?還是有其他一些方法來保護應用程序級別的密碼?安全的登錄頁面(使用的Servlet/JSP)
如果它是唯一的辦法,就是有可能限制訪問僅從HTTPS的應用程序? (如果相關,我使用Tomcat)。
我用servlet和JSP玩弄。我想創建一個簡單的應用程序。進入後會有登錄頁面。用戶可以輸入他的登錄名/密碼或自己註冊。我想知道,如果我想要確保密碼被「攔截」,我應該使用https嗎?還是有其他一些方法來保護應用程序級別的密碼?安全的登錄頁面(使用的Servlet/JSP)
如果它是唯一的辦法,就是有可能限制訪問僅從HTTPS的應用程序? (如果相關,我使用Tomcat)。
您需要安全的運動數據和靜止數據。所以你需要都。在傳輸層是SSL(HTTPS),並在持續等級你通常hash the password with a salt並同時顯示你顯然希望面具輸入的密碼。
如果我想確保密碼被「攔截」,我應該使用https嗎?還是有其他一些方法來保護應用程序級別的密碼?
是的,HTTPS是專爲此目的而設計的。不,當你想使用HTTP時,沒有其他方法。要在Tomcat上配置HTTPS,請閱讀Tomcat SSL Configuration HOW-TO。
如果它是唯一的辦法,就是有可能限制訪問僅從HTTPS的應用程序? (如果相關,我使用Tomcat)。
是的,這是可能的。當使用容器管理的認證,您可以通過在web.xml
設置運輸保障CONFIDENTIAL
強制此。另請參閱Java EE 6 tutorial - Securing web applications。 Tomcat在這裏不重要,你只需要確保它支持HTTPS,就像之前回答的那樣。
<security-constraint>
...
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
如果你然而homegrowing認證,那麼你需要實現自定義filter用來檢查是否ServletRequest#isSecure()
回報false
和發送重定向到正確的HTTPS URL方案。
感謝快速回答:) – Andna 2012-02-08 21:10:50
感謝快速回答:) – Andna 2012-02-08 21:11:25