Skip to main content

Anonymous Auth

Beta

This feature is in beta. Core behavior is stable, but some APIs or configuration may change before general availability.

Let users explore your app without registration. Anonymous accounts can be converted to permanent accounts later.

Captcha Protection

When captcha is enabled, anonymous sign-in is automatically protected by Cloudflare Turnstile. All client SDKs handle token acquisition transparently — no code changes needed.

Enable

// edgebase.config.ts
auth: {
anonymousAuth: true,
}

Sign In Anonymously

const { user } = await client.auth.signInAnonymously();
// user.isAnonymous → true

Convert to Email Account

await client.auth.linkWithEmail({
email: 'user@example.com',
password: 'securePassword',
});
// user.isAnonymous → false (data preserved)

Convert to OAuth Account

await client.auth.linkWithOAuth('google');

Access Rules

Use auth.isAnonymous in access rules to differentiate anonymous users:

access: {
insert(auth) { return auth !== null && !auth.isAnonymous }, // Only registered users
read(auth) { return auth !== null }, // Any authenticated user (including anonymous)
}

Auto-Cleanup

Stale anonymous accounts are automatically deleted after auth.anonymousRetentionDays (default: 30 days).