2012-01-07 97 views
8

將用戶帳戶限制爲唯一的電子郵件地址似乎很常見。所以,我的用戶登記表上,我做的電子郵件驗證,並返回像用戶註冊表單應該表明電子郵件地址是否已被使用?

的帳戶信息已被註冊爲[email protected]

然後,它發生,我認爲攻擊者可能使用此表格確定有關我的用戶的信息。有沒有一種替代方法可以在不影響安全性的情況下向我的用戶提供驗證消息?在我看來,沒有任何解決辦法。

回答

5

對於大多數類型的網站,我希望明確隱藏此信息將是一種糟糕的用戶體驗權衡。更好的解決方案是使用CAPTCHA來幫助防止電子郵件地址的撥號。

當攻擊者正在尋找關於特定用戶的信息(而不是試圖找到「某個帳戶」)時,就會出現這種情況。例如,如果您的網站迎合了對匿名有濃厚興趣的人,並且攻擊者對查明特定用戶是否正在使用該網站有強烈興趣,那麼該方法應該不同。我的做法可能是發送一封電子郵件到指示「已註冊」錯誤的地址。用戶的匿名興趣會超過用戶體驗煩惱。

0

我不認爲真的有可能創建一個錯誤信息,但沒有指出電子郵件地址已被使用,因爲這是電子郵件地址的要點。

1

我可以想到一種方法:您可以要求輸入電子郵件地址,然後將一次性註冊表單鏈接發送到該電子郵件地址。您可能需要使用驗證碼才能阻止垃圾郵件。如果電子郵件已經在系統中,它可以發送消息說他們已經有一個帳戶。

我認爲這是不必要的壽,除非你的網站是特別祕密,就像一個虐待受害者的支持小組。

1

只要告訴他們他們不能使用他們提供的電子郵件地址?你不需要再給出更多的理由嗎?如果他們知道這不是他們的電子郵件,他們可能仍然會猜測這是一個現有的地址,但您尚未確認。

或者

如何告訴他們您發送電子郵件到該地址,他們需要確認 - 即使你沒有。

+1

顯示「忘記密碼?」同時鏈接可能有助於緩解他們的記憶。 – 2012-01-07 20:21:22

+0

邁克 – 2012-01-07 20:24:06

0

這是我看到的選項:

1)顯示一個類似的不太清楚的錯誤消息「電子郵件地址無效」
2)接受登記,並通過電子郵件通知用戶關於他早期的帳戶(我會暗示)

在任何情況下,您都可以通過驗證碼和限制同一客戶端的請求來提高安全性。如果您關心用戶的隱私,強制進行獨特的電子郵件註冊可能不適合您的網站。

相關問題