2010-12-23 38 views
2

我在rails 3下使用了設計認證插件。目前,我禁用了電子郵件確認,因此註冊非常簡單快捷。設計認證:captcha必要?

我想知道如果某種驗證碼是必要的,以保護網站agains機器人。我想避免讓我的數據庫充滿虛假用戶,儘管這對系統沒有太大的損害(除了填滿磁盤!)。

如果強烈建議使用驗證碼,如果登錄/註冊僅限於使用HTTPS,是否也是如此?機器人使用HTTPS?

回答

6

我認爲這是一個必要的邪惡。希望我們不必使用它,但我們不生活在理想世界中。圖像twirly captcha絕對不美觀,應該避免。

我認爲你需要靈活掌握驗證碼和你使用的驗證碼類型。該戰略將會並應該發展。

最初,當你沒有很多用戶時,你可能完全避免驗證碼。一旦事情開始升溫,你開始在系統中看到機器人,請進入無法驗證的驗證碼(或反向驗證碼)。反向驗證碼基本上依賴於不被人類填充的特定字段來識別人類(將人類無法看到的字段放在表單上,​​通過使用css使其不可見;機器人將找到該字段並填充它,如果字段填滿,則您知道它不是人類;如果你願意,可以是蜜罐領域)。

最終,當您的網站變得非常流行,並且是殭屍的目標時,您將需要更加堅固的captcha,這將不容易破解,但用戶可能會忽略它,以便註冊到您非常受歡迎的網站。

所以從沒有驗證碼開始,然後發展。

2

我看不到機器人無法訪問使用SSL的頁面,因此如果您想避免bot用戶,請添加驗證碼或激活電子郵件確認。另一種選擇(如果你想註冊/登錄)真的很容易,可以使用OmniAuth(Devise也支持)。

+0

感謝您的回答! – plang 2010-12-23 13:29:41

1

我推薦一個CAPTCHA,這是一個很好的機器人過濾器,沒有那麼多的工作;如果您擔心其有效性,請使用reCAPTCHA - 它看起來具有相當的彈性,並且很好地集成在一起。對於HTTPS機器人 - 如果它們現在不存在,它們將在幾個月內(因爲更多的網站在FireSheep之後考慮使用HTTPS)。

+0

謝謝你的回答! – plang 2010-12-23 13:30:24