近期發現 Cloudflare 旗下有一項「Turnstile」產品,號稱是免費的 CAPTCHA 替代方案,CAPTCHA 其實就是大家常看到的「驗證碼」,為了確認操作者是真人、防止被自動化程式大量攻擊,通常會在登入、註冊、發布留言或訂票訂位畫面出現驗證碼提示,最常見的就屬 Google reCAPTCHA ,在經過多次版本更迭現在的驗證碼已經不再像早期需要輸入圖片上看到的文字,而是勾選驗證功能、當分數不夠時會要求選取指定的圖片。
不過 Google reCAPTCHA 會浪費使用者大量時間,很多時候即使選取正確圖片、也不一定能夠通過驗證,有鑑於此在 2020 年 Cloudflare 就決定從 reCAPTCHA 移轉到 hCaptcha(最主要的考量是費用、隱私問題和某些國家無法正常開啟 Google 服務),而且還支援 Privacy Pass 在遇到驗證碼時快速通過,省去手動驗證的時間。
從 Cloudflare Turnstile 網站可以得知這是一款替代 CAPTCHA 的免費工具,開發人員只需要將一小段簡單的程式碼加入網站,就能為網站訪客提供無煩惱、無 CAPTCHA 的操作體驗,簡單來說 Turnstile 既可以阻止自動化程式濫用行為、確認訪客是否為真人,也能夠提供更好的使用者體驗和更好的隱私權,Cloudflare 不會擷取資料並進行廣告的再行銷,有需要的開發者不妨去研究一下。
此外,Cloudflare 還有其他免費產品也很值得使用:
- Google Analytics 4 替代方案:隱私權與效能優先的 Cloudflare Web Analytics
- Cloudflare 電子郵件路由取代 G Suite 免費版可自訂 Email 域名信箱
- 設定 Cloudflare 健康情況檢查監測特定伺服器或網站,無法連線時發送通知
- Cloudflare 註冊最便宜網域不加價,整合免費 CDN 和 SSL 憑證
Cloudflare Turnstile
https://www.cloudflare.com/zh-tw/products/turnstile/
使用教學
STEP 1
從 Cloudflare Turnstile 頁面可以看到這項產品有免費方案和企業方案兩種,差別在於小工具數量、有 Cloudflare 標誌和驗證支援的主機名稱不同,原則上應該用免費方案就足夠。
STEP 2
點選開始使用後連結到 Turnstile 設定頁面,第一步需要先新增網站。
STEP 3
設定網站名稱、網站的主機名稱,可直接從 Cloudflare 上的現有網站中選取,選擇需要的小工具模式,有受控和非互動式、隱藏三種,自行依照需求選擇,如果不懂的話可以從開發文件獲得更多詳細資訊。
建立後就能拿到網站金鑰和秘密金鑰,這個金鑰可在未來返回相同頁面複製、取用,不用擔心離開後就無法拿到相同金鑰,Turnstile 也會提供用戶端整合代碼、伺服器端整合代碼。
STEP 4
Turnstile 說明文件很詳細,例如隱藏渲染 Turnstile 小工具的 HTML 寫法、說明和注意事項,也有提供範例 DEMO 和原始碼。
還有將 Turnstile 運用在保護網站上的表單,例如登入表單、聯絡表單等等,插入 JavaScript 程式碼、使用特定的標籤將其嵌入網站即可使用,更多的開發資料就直接參考 Turnstile 開發者說明文件。
值得一試的三個理由:
- Turnstile 提供更簡單和直觀的驗證方式,不再需要手動輸入或選擇圖片驗證
- 不會擷取用戶資料進行廣告再行銷,可最大程度保護訪客的隱私權
- 開發人員只需加入少量程式碼即可在網站上啟用驗證碼功能