2011-05-12 66 views
1

我正在爲我的學校做一些初步調查(我作爲學生在IT部門工作)。這裏的學生必須每6個月更換一次密碼,其中許多人都需要執行(許多)密碼規則。也就是說,他們經常不得不多次嘗試設置新密碼。實時密碼規則檢查器?

規則是:

  • 必須是8個字符或更多的 長度
  • 必須包含4種類型的 字符(大寫,小寫, 號碼,特殊字符)
  • 絕3不包含用戶的第一個, 最後或中間名
  • 不得包含用戶的用戶名
  • 切不可前
  • 匹配用戶使用 任何密碼必須鍵入兩次密碼, 鍵入密碼必須完全匹配

我有幾個問題:

  • 是否有可能創建一個基於網絡的 密碼檢查器提供 實時反饋,因爲用戶在其新密碼中鍵入 ?我 想象一個 的網頁的一個檢查表,其中綠色複選標記 被激活,因爲密碼符合 更多的標準。
  • 是否可以執行此安全且完全執行此 客戶端?
  • 從哪裏開始這樣的任務? 有沒有可以推薦的指南?

請記住,我不是一個Web開發人員。此外,請留下諸如「更改密碼策略」或「他們只是愚蠢的用戶」等任何詼諧的評論。

+1

Capital和Uppercase是不同的類型?! – Quentin

+0

我確信這是可能的,因爲我已經看到它在幾個網站上完成 - 不幸的是我不記得哪個......但至少你知道這是可能的!祝你好運! – Eilidh

回答

5

是否可以創建一個基於Web的密碼檢查器,在用戶輸入新密碼時提供實時反饋?我在網頁的一側想象一個檢查表,在密碼符合更多標準的情況下,激活綠色複選標記。

是的。

是否有可能做執行此檢查安全

當燈光熄滅綠色,它揭露了其中一個密碼的要求都滿足的信息。這將泄露有關密碼的數據給任何可以看到屏幕的人。

和完全客戶端?

是的。

從哪裏開始這樣的任務?

HTML文檔中的規則列表,每個規則旁邊有一個FAIL圖像。 JS中規則的編程版本。然後,只需在密碼輸入中的每個按鍵事件的循環中依次測試每個規則,並根據是否遵循規則交換PASS和FAIL圖像。

您需要用XMLHttpRequest對象命中服務器以檢查之前是否使用過密碼。確保你只存儲哈希和鹽漬密碼。

請記住,我不是一個Web開發人員。

然後,我建議你得到一個或成爲一個。

另外,請留下像「更改密碼策略」

精細,留下的機智一邊,堅持嚴肅問題的任何詼諧的評論:

如果有問題的人來了符合政策的密碼,那麼他們在記住它們時會遇到問題。這將導致人們不得不重新設置它們(IT部門需要更多的工作),並且讓人們把它們寫下來(這可能不太安全,然後使用更容易猜測/蠻力的密碼)。

+0

感謝您的回覆。我正在爲網絡開發團隊進行一些調查。 –

2

您指定的大部分規則都可以使用javascript進行實時檢查,更具體地說,使用正則表達式進行檢查。檢查密碼是否已被使用過,應在服務器端進行以確保安全。

1

是否可以創建一個基於Web的密碼檢查器,在用戶輸入新密碼時提供實時反饋?我在網頁的一側想象一個檢查表,在密碼符合更多標準的情況下,激活綠色複選標記。

是的,但你需要知道一些JavaScript來做到這一點。

是否有可能執行此安全和完全客戶端檢查?

不,是,或是和否,但不是兩者。您可以完全在客戶端進行檢查(除了檢查以前需要訪問數據庫的密碼)。但是,在客戶端沒有任何東西是安全的。您在客戶端執行的任何操作都應視爲對用戶的幫助。所有驗證必須始終在服務器上重新進行。

我不想成爲一個聰明的屁股,並告訴你改變密碼策略,這樣做,因爲驗證將是「很難做」將是一個不好的選擇,但我想推薦以下內容文章對一個已經在密碼策略決定:http://www.baekdal.com/tips/password-security-usability

1
  • 必須不匹配<之前使用凹口 - 一個任何密碼是必須執行服務器端,但可以安全地使用哈希來完成的唯一一個或某種形式或加密,因爲所述密碼的客戶端副本不會是好事。
0

正則表達式的大概是你想要開始的地方。如果你對web開發中的正則表達式不熟悉,我建議你從這裏開始:http://www.w3schools.com/jsref/jsref_obj_regexp.asp。如果你真的沒有網絡開發經驗,我不得不問你是如何陷入工作中的,你必須學習一門新的語言才能完成一項相對簡單的任務。你一定需要對JavaScript有所瞭解,才能做到像所有客戶端一樣。哦,我不建議測試

安全沒有帶來幫助,千萬不要在比賽前

這太冒險這樣做以簡單的方式客戶端和複雜用來做什麼的任何密碼從外部圖書館等希望這有助於和祝你好運!