2011-06-21 51 views
0

我正在創建一個用戶將被註冊的網站,如果他/她有帳戶,他/她將被重定向。Servlets是否很適合我的網站登錄確認頁面?

所以我想使用servlet鏈接表單和數據庫。

從黑客中使用安全嗎?

這是具有較少的機會最好的語言,以獲得比servlet的黑客攻擊?

好吧,我很exicited來創建它,但我真的不希望黑客我的網站很容易的事。

+1

它和其他許多技術一樣安全/不安全。 – Marcelo

+0

好吧,如果我創建這樣的網站,人們會相信這個網站給他們的信息? –

+0

它確實取決於您網站的其他內容,而不是其背後的技術。例如,網站的表現力和專業性如何,您向用戶詢問多少信息以及備份網站的公司/個人 – Marcelo

回答

0

只要你使用的是Java Web窗體,在某些時候,你使用任何框架是基於servlet的。所以如果你正確使用它們,那麼它是安全的。

最主要的一點要記住,以防止開裂您的身份驗證(如果基於數據庫)是SQL injection。只要你使用Hibernate,JPA或prepared statements你應該是安全的。

如果使用Tomcat,你也可以開始使用Tomcat native authentication

0

就像任何其他的框架,這是一個從黑客合理的安全,而不是完全免疫。您將容易受到:

  • 您的代碼/邏輯錯誤;
  • 漏洞在Tomcat /你的servlet運行器中被發現;
  • JVM發現漏洞;
  • 漏洞在OS中;
  • 漏洞......好吧,你的想法...

換句話說,它本質上不是那麼回事了其他任何你可能決定使用(無論是PHP等)。我個人比較喜歡Java,例如PHP,因爲我更有信心,沒有一些隨機默認設置會使應用處於風險之中。但那也是因爲我更像Java專家而不是PHP - 「使用你最熟悉的技術」也是另一種策略......

除了保持基礎架構的更新之外,還要記住一些主要事項:

  • 不使用「原始」SQL訪問數據庫:至少使用預先準備好的語句,並且對於用戶輸入實施一些合理的驗證;
  • 看看Servlet Session API;
  • 您通常希望檢查每個頁面請求的登錄用戶:不確定您「重定向」的含義;
  • 如果可能,防火牆關閉「原始」訪問數據庫,以便只有本地主機/應用程序服務器(如果在獨立服務器上託管數據庫 - 猜測你不會從頭開始)可以訪問你的數據庫(如果您需要遠程訪問,請考慮VPN連接)。

我也不一定只是「潛入」:有更多的閱讀主題。