BadPirate 13591daa7d fix(oidc-provider): authorize post-auth flow (#2849)
* oidcProvider authorize post-auth flow fix

Issue:

Recommended way to handle login for OIDC Provider flow is to call
authClient.signIn -- However, many of the callbacks in authorize.ts
endpoint directly throw their redirects, in many of these cases this
is not desired as it will redirect the fetch request when the intent
is to redirect the browser instead.

Fix:

If the call is coming from a cors (non-browser navigate) fetch call
when doing the consent page redirect or the final authorization
callback redirect, redirect using a hint in json payload to authClient
rather than attempting to redirect the CORS call.

This resolves issues both with CORS (that people were seeing) as
well as well as removing the need for the work around hack provided
in #2461

Tested: Locally, using updated code, oidcProvider and a genericOauth
client. Verified happy paths for login with / without scope, there
are some other issues with consent flow in general, but I'll address
those in a different PR.

* cleanup and lint

---------

Co-authored-by: Bereket Engida <bekacru@gmail.com>
2025-05-31 09:52:18 -07:00
2025-04-13 14:11:08 +02:00
2024-12-14 21:30:42 +03:00
2025-05-31 08:46:23 -07:00
2025-05-23 12:44:51 -07:00
2024-11-01 09:24:14 +03:00
2024-11-01 09:24:14 +03:00
2025-04-11 09:54:01 +03:00
2025-05-31 09:14:05 -07:00
2025-04-05 11:40:41 +03:00
2025-02-25 13:43:10 +03:00

Better Auth Logo

Better Auth

The most comprehensive authentication library for TypeScript
Learn more »

Discord · Website · Issues

npm npm version GitHub stars

About the Project

Better Auth is framework-agnostic authentication (and authorization) library for TypeScript. It provides a comprehensive set of features out of the box and includes a plugin ecosystem that simplifies adding advanced functionalities with minimal code in short amount of time. Whether you need 2FA, multi-tenant support, or other complex features. It lets you focus on building your actual application instead of reinventing the wheel.

Why Better Auth

Authentication in the TypeScript ecosystem is a half-solved problem. Other open-source libraries often requires a lot of additional code for anything beyond basic authentication. Rather than just pushing third-party services as the solution, I believe we can do better as a community—hence, Better Auth.

Contribution

Better Auth is free and open source project licensed under the MIT License. You are free to do whatever you want with it.

You could help continuing its development by:

Security

If you discover a security vulnerability within Better Auth, please send an e-mail to security@better-auth.com.

All reports will be promptly addressed, and you'll be credited accordingly.

Description
No description provided
Readme 248 MiB
Latest
2026-04-16 05:05:30 -05:00
Languages
TypeScript 99.4%
CSS 0.3%
MDX 0.2%