[PR #356] [MERGED] refactor: use origin headers check instead of tokens for csrf protection #28850

Closed
opened 2026-04-17 20:18:07 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/better-auth/better-auth/pull/356
Author: @Bekacru
Created: 10/28/2024
Status: Merged
Merged: 10/28/2024
Merged by: @Bekacru

Base: mainHead: remove-csrf-check


📝 Commits (10+)

📊 Changes

36 files changed (+162 additions, -298 deletions)

View changed files

📝 SECURITY.md (+9 -0)
📝 docs/content/docs/concepts/cookies.mdx (+3 -37)
📝 docs/content/docs/reference/options.mdx (+11 -2)
📝 package.json (+1 -1)
📝 packages/better-auth/package.json (+1 -1)
📝 packages/better-auth/src/__snapshots__/init.test.ts.snap (+0 -10)
📝 packages/better-auth/src/api/index.ts (+2 -4)
packages/better-auth/src/api/middlewares/csrf.ts (+0 -61)
📝 packages/better-auth/src/api/middlewares/index.ts (+1 -1)
📝 packages/better-auth/src/api/middlewares/origin-check.test.ts (+64 -2)
packages/better-auth/src/api/middlewares/origin-check.ts (+41 -0)
packages/better-auth/src/api/middlewares/redirect.ts (+0 -38)
📝 packages/better-auth/src/api/routes/account.ts (+1 -2)
packages/better-auth/src/api/routes/csrf.ts (+0 -38)
📝 packages/better-auth/src/api/routes/email-verification.ts (+0 -3)
📝 packages/better-auth/src/api/routes/forget-password.ts (+0 -3)
📝 packages/better-auth/src/api/routes/index.ts (+0 -1)
📝 packages/better-auth/src/api/routes/session.test.ts (+2 -1)
📝 packages/better-auth/src/api/routes/sign-in.ts (+0 -3)
📝 packages/better-auth/src/api/routes/sign-out.ts (+0 -1)

...and 16 more files

📄 Description

This PR removes the CSRF token check, as it’s largely redundant given that CSRF protection is handled by verifying origin headers. The server’s base URL is automatically included in the trustedOrigins list, and any third-party browser environment origins must also be added to trustedOrigins.


🔄 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/356 **Author:** [@Bekacru](https://github.com/Bekacru) **Created:** 10/28/2024 **Status:** ✅ Merged **Merged:** 10/28/2024 **Merged by:** [@Bekacru](https://github.com/Bekacru) **Base:** `main` ← **Head:** `remove-csrf-check` --- ### 📝 Commits (10+) - [`8713a97`](https://github.com/better-auth/better-auth/commit/8713a97bba862f797eb016c8478fc92c057c82be) fix: add is credential supported check - [`f3ce761`](https://github.com/better-auth/better-auth/commit/f3ce7618c4cb81621185f60a5729d344a4de6564) chore: release v0.6.2-beta.1 - [`5236375`](https://github.com/better-auth/better-auth/commit/5236375d045ed11216a15d2dcd29018775f5ca8d) fix: add credential check on csrf too - [`5743182`](https://github.com/better-auth/better-auth/commit/5743182a33efae097a12552778b569a7108e6f91) chore: release v0.6.2-beta.2 - [`1dc9722`](https://github.com/better-auth/better-auth/commit/1dc972294e31b68c69846d842b491510c340b753) chore: script - [`6208f58`](https://github.com/better-auth/better-auth/commit/6208f58c2f4c935755c81c7d026b03f09298b387) chore: release v0.6.2-beta.3 - [`64013ad`](https://github.com/better-auth/better-auth/commit/64013ad46f9ac610a736708ac8ac9efaa2516b6f) init - [`7f6a844`](https://github.com/better-auth/better-auth/commit/7f6a844939c50d628a76c205c0c841fafc71dfcb) remove docs and more - [`36e4996`](https://github.com/better-auth/better-auth/commit/36e49969b64af450900dc69f0abf140853909068) chore: release v0.6.2-beta.4 - [`5a4a8fd`](https://github.com/better-auth/better-auth/commit/5a4a8fd75c9924d2005a7f4c2b7f5c91382c1b7a) chore: release v0.6.2-beta.5 ### 📊 Changes **36 files changed** (+162 additions, -298 deletions) <details> <summary>View changed files</summary> 📝 `SECURITY.md` (+9 -0) 📝 `docs/content/docs/concepts/cookies.mdx` (+3 -37) 📝 `docs/content/docs/reference/options.mdx` (+11 -2) 📝 `package.json` (+1 -1) 📝 `packages/better-auth/package.json` (+1 -1) 📝 `packages/better-auth/src/__snapshots__/init.test.ts.snap` (+0 -10) 📝 `packages/better-auth/src/api/index.ts` (+2 -4) ➖ `packages/better-auth/src/api/middlewares/csrf.ts` (+0 -61) 📝 `packages/better-auth/src/api/middlewares/index.ts` (+1 -1) 📝 `packages/better-auth/src/api/middlewares/origin-check.test.ts` (+64 -2) ➕ `packages/better-auth/src/api/middlewares/origin-check.ts` (+41 -0) ➖ `packages/better-auth/src/api/middlewares/redirect.ts` (+0 -38) 📝 `packages/better-auth/src/api/routes/account.ts` (+1 -2) ➖ `packages/better-auth/src/api/routes/csrf.ts` (+0 -38) 📝 `packages/better-auth/src/api/routes/email-verification.ts` (+0 -3) 📝 `packages/better-auth/src/api/routes/forget-password.ts` (+0 -3) 📝 `packages/better-auth/src/api/routes/index.ts` (+0 -1) 📝 `packages/better-auth/src/api/routes/session.test.ts` (+2 -1) 📝 `packages/better-auth/src/api/routes/sign-in.ts` (+0 -3) 📝 `packages/better-auth/src/api/routes/sign-out.ts` (+0 -1) _...and 16 more files_ </details> ### 📄 Description This PR removes the CSRF token check, as it’s largely redundant given that CSRF protection is handled by verifying origin headers. The server’s base URL is automatically included in the `trustedOrigins` list, and any third-party browser environment origins must also be added to `trustedOrigins`. --- <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-17 20:18:08 -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#28850