2008-10-28 234 views
18

我正在使用Shibboleth的單點登錄登錄頁面進行工作,該頁面將用於各種Web應用程序。顯然,我們希望儘可能使此頁儘可能安全可用,同時限制網絡釣魚詐騙的影響。登錄頁面的最佳做法?

在設計登錄頁面時要記住哪些最佳實踐?

已經拿出瞭解決此問題的一些問題:

  • 是它的登錄頁面總是一樣的每個顯示器上重要?
  • 相反,登錄頁面有隨機設計會有好處嗎?
  • 登錄頁面看起來與所有其他頁面一樣還是應該有其獨特的設計?
  • 如果登錄頁面有其獨特的設計,它是否應該包含來自您網站設計的其他常量元素(如全局導航)?
  • 登錄頁面是否提供給用戶額外內容(如最新消息)的適當位置?
  • 是否有任何其他安全功能應該包含在內以幫助人們保持安全?
+2

只是個人觀點,並非真正的答案,但...我喜歡那些僅僅出現在頁面中心的登錄表單(而不是頁面),並且在輸入用戶名和密碼後,離開當前頁面! – 2008-10-28 18:58:02

回答

21

可用性指出:

我個人討厭當網站把「忘記密碼」或「忘記用戶名」或「幫助」鏈接插圖中的密碼字段,登錄按鈕。作爲一個鍵盤用戶,我不需要在他們的TAB上進入提交按鈕。

更好的是,還可以在密碼字段上捕獲Enter鍵,以便我可以使用Enter鍵自動提交。

7

在登錄頁面中保留相同的設計會讓您知道您的用戶他們正試圖登錄到您的網頁,如果設計隨機更改用戶可能認爲該網站已被移動,或他們是被捕的受害者。所以我會建議保持與您的內容頁面相同的指導原則

5

如果指定的憑證無效,我仍然會在很多應用程序中看到另一個「不用」的事情,但不指明哪一個是無效。簡單地說,像「無效的用戶/密碼組合」而不是「無效的密碼」,這將阻止社交工程的這些人知道訪問您的網站的用戶羣。

1

來一個有用的提示: 您可以通過將autocomplete =「off」添加到密碼字段來禁用客戶端密碼保存。

這並不對所有的瀏覽器(如果我沒記錯,IE 6 +和Firefox 3+)

+0

對於不讓我保存密碼的網站,我有一個不錯的純文本文件,其中包含我的密碼。該功能是有原因的,讓我決定是否使用它,不要因爲可以就關閉它。 – tloach 2008-10-28 16:52:44

+1

你不想相信你的用戶以明文保存他們的一些密碼(同樣我不相信一些公司有效地存儲我的密碼):) – Luk 2008-10-28 21:26:11

0

認識到你的用戶一般都會在該頁面上花費10秒鐘的時間,只要顯然在哪裏放置用戶ID和密碼,看起來真的沒什麼關係。除此之外,如果我忘記密碼,則不會成爲那些向我發送密碼的網站之一。至少讓我相信它藏在一個很好的鹽漬散列中,在那裏你無法檢索它。

6

不管你設計什麼,Phisher都可以模仿它。完全防止網絡釣魚是一個難題。你基本上必須有一些方法來確認你的用戶之前他們登錄。有些銀行現在這樣做。你輸入你的名字,然後他們向你顯示你自己選擇的圖像,然後,一旦你確定它是相同的圖像,你輸入你的密碼。這可能比您的網站需要的複雜程度更高。

在技術方面,美國銀行通過使用名爲PassMark的Flash本地共享對象來完成此操作。你的瀏覽器默默地將這些數據標識給銀行。如果您刪除LSO,那麼您將不會顯示您的圖像,因爲BofA無法識別您。即使這樣,它仍然容易受到中間人攻擊。

3

看起來像是一個不費吹灰之力,但如果應用程序需要使用HTTPS。哎呀,即使它不保證它,因爲人們傾向於重複使用相同的密碼。這些天你可以很便宜地獲得SSL證書。如果他們從您的網站提取密碼,他們可以在其他地方嘗試。甚至很多銀行也沒有安全線路上的登錄頁面。它發佈到HTTPS頁面,但在中型攻擊中仍然沒有任何保護。

我同意Omniwombat。網絡釣魚是一個難以解決的難題,看似不可能完全解決。

1

迄今爲止,我所見過的最好的嘗試阻止網絡釣魚的方法是銀行的登錄界面。登錄分3部分完成,首先用戶輸入他們的帳號(借記卡號,信用卡號......),第二步將隨機列出用戶指定的3個問題中的1個(例如:你參加過哪些高中課程對於10年級),最後一部分(如果前兩部分成功)顯示一個圖像和用戶在註冊時指定的一些文本,並在下面輸入密碼字段。

0

@Joe倫喬尼,每個人都在Shibboleth的

你的網站的網頁的興致應該有相同的整體外觀和感覺每一頁上。

關於Shibboleth和SSO。請注意您的組織與哪個角色相關聯。您是身份提供商 - IdP(認證用戶,然後將響應發送給SP),或者您是服務提供商 - SP(誰將根據IdP發送的響應和屬性授予身份驗證

如果你是一個SP,你有任何靈活性你想要將你的用戶鏈接到一個IdP供他們登錄,許多SP創建他們自己的WAYF(你從哪裏來)頁面,將用戶重定向到IdP的登錄頁面

如果你是一個國內流離失所者,你應該有一個登錄頁面,看起來熟悉的用戶,以便他們可以登錄,然後被重定向到所需要的SP給予適當的訪問屬性的SP。

就釣魚詐騙而言,保持Shibboleth元數據最新至關重要。我相信許多聯盟建議每(1)小時下載一次元數據。

許多Shibboleth的問題都可以在這裏得到解答:https://spaces.internet2.edu/display/SHIB2/Home

希望這有助於你出去。

2

想像一個用戶以及一名安全警衛:如果你讓他們每次登錄都要進行驗證碼驗證,他們會感到非常厭煩。

如果您試圖阻止拒絕服務,那麼也許只有在特定時間段內有足夠(失敗?)的登錄嘗試後纔會顯示驗證碼。

考慮使用NTLM,OpenID或Shibboleth爲大多數用戶儘可能自動登錄。

不要讓人們去一個單獨的頁面進行註冊。推測你會有用戶名和密碼字段,以及登錄/提交按鈕。只需添加一個「註冊爲新用戶」按鈕,以便新用戶可以使用現有的用戶名/密碼字段。如果您需要爲新用戶收集其他詳細信息,請彈出一個表單(使用DHTML,而不是彈出窗口)來收集它們。