[PR #957] [MERGED] feat: create Cloudflare Turnstile middleware plugin #20462

Closed
opened 2026-04-15 19:42:59 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/better-auth/better-auth/pull/957
Author: @0scrm
Created: 12/19/2024
Status: Merged
Merged: 2/14/2025
Merged by: @Bekacru

Base: v1.2Head: issue-956-cloudflare-turnstile-plugin


📝 Commits (6)

  • ed8b996 feat: create Cloudflare Turnstile middleware plugin
  • 4f0303e fix: middleware returns new Response & working unit tests
  • 3982d38 chore: renamed plugin to cloudflare-turnstile
  • d09be9f docs: adds Cloudflare Turnstile plugin documentation
  • 9503348 docs: improves Cloudflare Turnstile's docs
  • d3e65df feat: move to generic captcha plugin, supporting multiple providers

📊 Changes

11 files changed (+532 additions, -0 deletions)

View changed files

📝 docs/components/sidebar-content.tsx (+17 -0)
docs/content/docs/plugins/captcha.mdx (+79 -0)
packages/better-auth/src/plugins/captcha/captcha.test.ts (+212 -0)
packages/better-auth/src/plugins/captcha/constants.ts (+15 -0)
packages/better-auth/src/plugins/captcha/error-codes.ts (+6 -0)
packages/better-auth/src/plugins/captcha/index.ts (+67 -0)
packages/better-auth/src/plugins/captcha/types.ts (+31 -0)
packages/better-auth/src/plugins/captcha/verify-handlers/cloudflare-turnstile.ts (+44 -0)
packages/better-auth/src/plugins/captcha/verify-handlers/google-recaptcha.ts (+44 -0)
packages/better-auth/src/plugins/captcha/verify-handlers/index.ts (+2 -0)
packages/better-auth/src/utils/middleware-response.ts (+15 -0)

📄 Description

Fixes #956

This is the initial implementation of a Cloudflare Turstile plugin.

It's pretty straightforward: the server plugin is an onRequest middleware that submits the CAPTCHA token to Cloudflare's /siteverify endpoint and intercepts any invalid/missing CAPTCHA challenge.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/better-auth/better-auth/pull/957 **Author:** [@0scrm](https://github.com/0scrm) **Created:** 12/19/2024 **Status:** ✅ Merged **Merged:** 2/14/2025 **Merged by:** [@Bekacru](https://github.com/Bekacru) **Base:** `v1.2` ← **Head:** `issue-956-cloudflare-turnstile-plugin` --- ### 📝 Commits (6) - [`ed8b996`](https://github.com/better-auth/better-auth/commit/ed8b9963a3a02c92179d7514f786d016ff01f3c2) feat: create Cloudflare Turnstile middleware plugin - [`4f0303e`](https://github.com/better-auth/better-auth/commit/4f0303e457b7a112357053b4612b3fabf3840295) fix: middleware returns new Response & working unit tests - [`3982d38`](https://github.com/better-auth/better-auth/commit/3982d384e31a16817d34baceb461a79f5f28d750) chore: renamed plugin to cloudflare-turnstile - [`d09be9f`](https://github.com/better-auth/better-auth/commit/d09be9f7e49c7309d3815c8dce959a4d6e551ae4) docs: adds Cloudflare Turnstile plugin documentation - [`9503348`](https://github.com/better-auth/better-auth/commit/9503348483466c04b6aa0e057fa76f674e5b9453) docs: improves Cloudflare Turnstile's docs - [`d3e65df`](https://github.com/better-auth/better-auth/commit/d3e65df5369f56b144fa2fca293117dc6bcd721b) feat: move to generic captcha plugin, supporting multiple providers ### 📊 Changes **11 files changed** (+532 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `docs/components/sidebar-content.tsx` (+17 -0) ➕ `docs/content/docs/plugins/captcha.mdx` (+79 -0) ➕ `packages/better-auth/src/plugins/captcha/captcha.test.ts` (+212 -0) ➕ `packages/better-auth/src/plugins/captcha/constants.ts` (+15 -0) ➕ `packages/better-auth/src/plugins/captcha/error-codes.ts` (+6 -0) ➕ `packages/better-auth/src/plugins/captcha/index.ts` (+67 -0) ➕ `packages/better-auth/src/plugins/captcha/types.ts` (+31 -0) ➕ `packages/better-auth/src/plugins/captcha/verify-handlers/cloudflare-turnstile.ts` (+44 -0) ➕ `packages/better-auth/src/plugins/captcha/verify-handlers/google-recaptcha.ts` (+44 -0) ➕ `packages/better-auth/src/plugins/captcha/verify-handlers/index.ts` (+2 -0) ➕ `packages/better-auth/src/utils/middleware-response.ts` (+15 -0) </details> ### 📄 Description Fixes #956 **This is the initial implementation of a Cloudflare Turstile plugin.** It's pretty straightforward: the server plugin is an `onRequest` middleware that submits the CAPTCHA token to Cloudflare's `/siteverify` endpoint and intercepts any invalid/missing CAPTCHA challenge. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-15 19:42:59 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/better-auth#20462