Production-ready identity,
in three lines.
OAuth (15 providers), MFA, magic links, granular RBAC. One single SDK, zero opaque redirects, RLS policies that work seamlessly with your Postgres.
'use server'import { aura } from '@/lib/aurabase'export async function signIn(formData: FormData) {const email = formData.get('email') as stringconst password = formData.get('password') as stringconst { data, error } = await aura.auth.signInWithPassword({email, password,mfa: 'required', // enforce TOTP if enrolled})if (error) return { error: error.message }redirect('/dashboard')}
Everything expected from an enterprise identity platform
15 OAuth providers
Google, GitHub, Discord, Facebook, X, Microsoft, Apple, Spotify, Twitch, Bitbucket, Zoom, Notion, Figma, Kakao, Snapchat, plus generic OIDC.
TOTP MFA
Authy/1Password compatible TOTP, single-use recovery codes, optional SMS login fallback.
Magic links & OTP
Passwordless email or 6-digit OTP. Localized email templates, per-address rate limiting, SMS fallback.
Granular RBAC
Roles, permissions, org hierarchies. Postgres policies generated automatically from your RBAC graph.
Bot detection
Behavioral fingerprinting, invisible challenges, IP/device rate-limiting. Blocks 99.7% of credential stuffing.
Connect with providers your users already trust
Fifteen officially maintained OAuth providers. The most requested ones are ready in one click from Studio, with PKCE, state verification, CSRF protection, and automated token rotation.
Dedicated, developer-friendly REST surface
/auth/v1/signupCreate an account. Optional email verification./auth/v1/signin/passwordAuthenticate with password, returns session + refresh token./auth/v1/signin/oauth/:providerInitiate PKCE OAuth flow, returns consent URL./auth/v1/magic-linkSend magic link to the specified email address./auth/v1/mfa/enrollTrigger TOTP enrollment for the user./auth/v1/sessionReturn current session and claims./auth/v1/userUpdate user metadata (re-verification required for email)./auth/v1/sessionSign out, revokes server-side refresh token.Fast, secure, auditable
Aurabase Auth · Supabase Auth · Auth0 · Clerk
Frequently asked questions
How does this integrate with Postgres and RLS policies?+
request.jwt.claims into the Postgres session, allowing your RLS policies to access auth.uid(), auth.role(), auth.tenant() without any application-level middleware.Can we connect an in-house IdP or enterprise SSO?+
How are passwords stored?+
Do sessions work on React Native, Tauri, and Electron?+
@aurabase/native for Tauri/Electron with OS keychain bindings. Refresh tokens never leave the secure keychain.What about audit logs?+
If I leave, what do I get to export?+
users.jsonl export (including Argon2id password hashes), your OAuth linked accounts, and your RLS policies in pure SQL. No proprietary APIs to re-implement — our format is compatible with Auth.js and Lucia.Turn on production identity today.
The SDK, OAuth providers, MFA, and RLS policies. No proxies, no opaque redirects, no surprise pricing.