Commit Graph

1976 Commits

Author SHA1 Message Date
Dhruv Jain
29536bbf18 docs: fix mongodb page join link (#6941) 2025-12-23 04:53:02 +00:00
d0
8637e11826 docs: add stargate to community plugins list (#6846) 2025-12-23 04:41:45 +00:00
Taesu
06f4040689 docs: correct OAuth Provider sidebar icon color (#6935) 2025-12-23 03:08:48 +00:00
Dylan Vanmali
f1b90e4085 feat(oauth-provider): an oauth 2.1 compliant plugin (#4163)
An upgrade to oidc-provider plugin that makes it oauth2.1 compliant and has a configuration that is secure by default.

Plans for the deprecation of oidc-provider plugin due to many inherent flaws in its design. Internally, plugin functions now share logic, providing for better future extensibility if new code_grants need to be written or user/client jwt or opaque tokens need to be written. Furthermore, as an oAuth 2.1 provider, it provides logic valid for an MCP server. When using the scope "openid" (optional, enabled by default), the server acts like an OpenId server able to issue id tokens and provides a /userinfo endpoint.

Features

OAuth 2.1 by default
Properly supports authorization_code, refresh_token, and client_credentials grants
PKCE by default (removes plain completely)
Public and confidential client registration
JWT plugin is required by default, but can be disabled using disableJWTPlugin flag
Access tokens can now be received in JWT verifiable format using the resource parameter (ie JWT aud field)
Id tokens are still verifiable by JWKS when using JWT Plugin, or clientSecret if disabled. Fixes issue to prevent public clients when disableJWTPlugin: true from obtaining id tokens directly even when they shouldn't be allowed an id token and should use /userinfo instead.
Protects /userinfo with scope check
Separates Refresh Token and Access token on database schema to allow multiple access tokens per refresh and multiple refresh tokens per login session.
oauthAccessToken strictly deals with opaque tokens
Opaque tokens are given only when resource parameter (aka audience) is not provided
Option to Encode and Decode refresh tokens
allowDynamicClientRegistration with allowUnauthenticatedClientRegistration flags
Separation of default expiration times
Proper creation of public and confidential clients
Prevents misconfiguration between .well-known/openid-configuration endpoint and plugin settings
scopeExpirations to assign scopes specific expiration
Custom claims through separated functions: customAccessTokenClaims, customIdTokenClaims, and customUserInfoClaims
Organizational support through activeOrganizationalId on a session such as through the organizational plugin. Attaches to oAuthClient via reference_id.
Rp-initiated logout
Account Selection via prompt=select_account.
Account Creation via prompt=create.
Prompt combinations prompt=select_account+consent and prompt=login+consent

Docs available at https://www.better-auth.com/docs/plugins/oauth-provider (pr: https://github.com/better-auth/better-auth/blob/main/docs/content/docs/plugins/oauth-provider.mdx)
2025-12-22 19:16:54 +00:00
Shoubhit Dash
3e28ee00ea feat: add a global backgroundTasks config option to defer actions like sending email and updates to run after response is sent (#6713)
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-12-20 19:43:16 +00:00
Bereket Engida
14414c67a8 docs(organization): update default organization limit to 'unlimited' (#6808)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-20 15:38:26 +00:00
Alex Yang
999a830b6f docs: clarify username sign-in functionality in documentation (#6901)
Co-authored-by: Jilles Soeters <jilleswf@gmail.com>
2025-12-20 08:17:18 +00:00
Alex Yang
862fb3ddbf chore(docs): bump tailwindcss (#6896) 2025-12-20 07:18:20 +00:00
vijit-lark
92e8eca03d docs: add community plugin Lark billing (#6813) 2025-12-20 02:06:36 +00:00
Mauricio Galvez
bf6b225e7c docs: fix typo in Organization plugin docs (#6885) 2025-12-20 00:41:21 +00:00
Paola Estefanía de Campos
f58d9b98c9 doc(auth): clarify trustedOrigins callback request parameter (#6890) 2025-12-20 00:40:52 +00:00
Paola Estefanía de Campos
ac00442f5c fix(auth): respect trustedOrigins when baseURL is inferred (#6882) 2025-12-19 17:08:50 +00:00
Taesu
1a2c570cbe docs: use dotenv instead of env (#6883) 2025-12-19 17:04:04 +00:00
Gautam Manchandani
8f22ecfd04 docs: add baseURL configuration warning to Google provider (#6878)
Co-authored-by: Gautam Manchandani <gautammanch@Gautams-MacBook-Air.local>
2025-12-19 12:00:27 +00:00
Taesu
000b3db728 chore: remove unnecessary custom word (#6825) 2025-12-19 05:57:35 +00:00
Soham Datta
c2eb2b77c4 docs(convex): fix import statement for authConfig (#6861) 2025-12-19 05:28:07 +00:00
Taesu
646ff722a0 docs: fix AI chat code formatting issue (#6869) 2025-12-19 05:27:00 +00:00
Taesu
c01b867bd4 fix: respect IP headers in dev/test environments (#6854) 2025-12-18 12:25:26 +00:00
Bennett Dams
6e67356355 docs: change role type from string to enum values (#6844) 2025-12-18 06:24:09 +00:00
Dominik K.
a79ecc99b2 docs(convex): clean up documentation (#6829) 2025-12-18 02:27:52 +00:00
Dominik K.
2f68a18cc7 docs(polar): update client import (#6830) 2025-12-18 02:26:57 +00:00
Taesu
18e642ea1d docs: update logo for Christmas (#6806) 2025-12-18 01:14:23 +00:00
Anmol
3176ecabee docs: uses latest getRequestHeaders() to grab headers from request in Auth Middleware in Tanstack Start (#6824) 2025-12-17 21:20:53 +00:00
Nico Labarre
e76defb786 feat: add patreon social provider (#6245)
Co-authored-by: benkingcode <ben@lionfeet.com>
Co-authored-by: Kinfe123 <kinfishtech@gmail.com>
2025-12-17 03:57:14 +00:00
Paola Estefanía de Campos
bbc3dda17d feat(saml): enforce one-time use of SAML assertions (#6719) 2025-12-17 01:32:35 +00:00
Shawn Erquhart
1a9b1a3e66 docs(convex): update guide for Convex component 0.10 (#6811) 2025-12-17 00:36:20 +00:00
Paola Estefanía de Campos
dc6afbc8a1 feat(saml): validate SAML crypto algorithms during initial phase (#6785) 2025-12-15 22:41:23 +00:00
Ambuj Kumar
ff84f35aeb docs(dodopayments-plugin): add docs for new checkout sessions and usage plugin (#6754) 2025-12-15 16:39:52 +09:00
Joél Solano
f59fe3a199 docs: fix overflowing code elements (#6748) 2025-12-14 16:11:52 +00:00
Brian Cooper
4a5cdfb2fa docs: restrict SIWE example nonce generation characters (#6741) 2025-12-14 06:56:55 +00:00
Gaga86
5f3b3de592 docs: updated the accountInfo server side example (#6692) 2025-12-14 05:29:49 +00:00
Joél Solano
fccbe121aa docs(expo): fix code examples (#6731) 2025-12-14 05:28:34 +00:00
Gautam Manchandani
4e2fae6816 docs(oidc-provider): fix incorrect redirectURLs property name (#6734)
Co-authored-by: Gautam Manchandani <gautammanch@Gautams-MacBook-Air.local>
2025-12-14 05:14:52 +00:00
Joél Solano
3b6016e6c8 docs: add rss feed (#6733) 2025-12-14 02:32:04 +00:00
Bereket Engida
700f40ab94 feat(phone-number): add password length validation for reset functionality (#6674) 2025-12-13 23:51:17 +00:00
Taesu
99defeaf80 chore: bump react and next (#6707) 2025-12-13 11:32:02 +00:00
Jonathan Samines
50248360d2 feat(sso): add URL normalization and validation to all discovery URLs (#6503)
Co-authored-by: Paola Estefanía de Campos <paolaestefania.decampos@gmail.com>
Co-authored-by: Paola Estefanía de Campos <84341268+Paola3stefania@users.noreply.github.com>
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
2025-12-12 23:16:58 -08:00
Paola Estefanía de Campos
b9d4b1c8e1 feat(sso): add OIDC discovery (#6395)
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
2025-12-12 23:14:57 -08:00
Taesu
8ef993658e docs: correct codeblock title (#6708) 2025-12-13 02:44:25 +00:00
Maxwell
c1656d0d70 docs(organization): add missing organizationRole schema (#6714) 2025-12-12 17:45:58 +00:00
Paola Estefanía de Campos
f9875ecb4c feat(saml): assertion timestamp validation with per-provider clock skew (#6706) 2025-12-12 07:02:03 +00:00
dependabot[bot]
6089a57dc7 chore(deps): bump next from 16.0.7 to 16.0.9 (#6702)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-12 01:10:09 +00:00
Paola Estefanía de Campos
5a49f7102e feat(sso): add InResponseTo validation (#6557) 2025-12-11 23:57:15 +00:00
Saviru
3cb5ded4c7 docs: add Argon2 password hashing example (#6688) 2025-12-11 06:46:09 +00:00
Taesu
73bc1113d2 docs: use actual logo colors for migration guide section (#6676) 2025-12-11 02:10:20 +00:00
Jonathan Samines
262df9b699 chore: remove unused variables (#6647) 2025-12-09 21:51:48 +00:00
Jonathan Samines
4146cf3fda docs(sso): fix default sso docs (#6640) 2025-12-09 17:43:08 +00:00
Cryze
28cd9d111c docs: correct typo in backup code recovery method description (#6374) 2025-12-09 05:56:38 +00:00
Gabriel Ferraz
5734a2e483 docs: creem subscription database schema changes (#6375) 2025-12-09 05:56:38 +00:00
Joél Solano
b7d3281f91 feat(expo): last-login-method client plugin (#6413)
Co-authored-by: Alex Yang <himself65@outlook.com>
2025-12-09 00:25:08 +00:00