Keycloak 整合

為你的 Keycloak 流程加上驗證碼

以伺服端驗證的挑戰保護 Keycloak 瀏覽器登入、自助式註冊與重設密碼頁面。單一 provider JAR,無需寫程式。

Keycloak 26+ · Java 17 伺服器簽發、一次性 token 開源,單一 JAR
/admin/master/console/#/realm/authentication
Captchala Username Password Form
cl_pub_a8f3…29c1
••••••••••••••••
RequirementREQUIRED

為什麼在 Keycloak 上選用 CaptchaLa

針對機器人最先攻擊的頁面進行伺服端驗證。

隱私優先

不引入第三方追蹤像素與廣告信標。使用者不被畫像。原生符合 GDPR、CCPA 與 PIPL。

伺服端防重放

Keycloak 在渲染時簽發一次性 token,並以 App Secret 在伺服端進行驗證。已解的 token 無法被重複使用或跨表單共用。

免程式直接接入

將單一 provider JAR 放入 providers/,執行 kc.sh build,在流程中加入 execution 並貼上 App Key 與 App Secret 即完成。密鑰永遠不會傳到瀏覽器。

保護的位置

在驗證設定中各流程可獨立加入。

瀏覽器登入
自助式註冊
重設密碼

三步接入

部署 provider,然後串接流程。

  1. 1

    部署 JAR

    將 keycloak-captchala.jar 複製到 /opt/keycloak/providers/,執行 kc.sh build 並重新啟動。將登入主題設定為「captchala」。

  2. 2

    貼上 App Key 與 App Secret

    在 captcha.la 註冊帳號,複製 App Key 與 App Secret,貼到 Captchala execution 的設定中(齒輪圖示)。

  3. 3

    選擇要保護的流程

    將 Captchala 步驟加入瀏覽器、註冊和/或重設憑證流程——登入、註冊、重設密碼,完成。

常見問題

Keycloak 外掛免費嗎?

免費且開源。CaptchaLa 免費方案包含每月 10,000 次驗證;只在需要更高用量時才需要付費。

支援哪些 Keycloak 版本?

Keycloak 26+ 的 Quarkus 發行版,以 Java 17 針對 26.5.6 版本建置。將 JAR 放入 providers/,執行 kc.sh build,然後重新啟動。

可以保護哪些頁面?

瀏覽器登入、自助式註冊以及重設密碼。每條流程獨立加入,可以只保護其中一條、兩條或全部三條。

App Secret 會暴露給瀏覽器嗎?

不會。密鑰以遮罩方式儲存,僅在 Keycloak 向 CaptchaLa API 發送請求時透過 X-App-Secret 標頭傳遞,不會出現在任何頁面、範本或日誌中。

如果 CaptchaLa API 無法連線怎麼辦?

外掛預設為失敗關閉,提交將被拒絕。可以在任一 execution 上切換為失敗放行,適合灰度上線。

保護你的 Keycloak realm

免費起步——每月 10,000 次驗證,無需信用卡。

免費開始