Dashboard

Row Level Security

Enforce per-user access with Postgres policies and uid().

Enable RLS

In the table editor schema panel → Policies, enable RLS (or run SQL). Voltbase provisions {schema}_anon and {schema}_authenticated roles per project.

uid()

Each project schema exposes uid() reading request.jwt.claim.sub. The REST layer sets this when X-User-Jwt is present (the SDK sends it automatically after sign-in).

Example policy

query.sql
ALTER TABLE todos ENABLE ROW LEVEL SECURITY;

CREATE POLICY "own todos"
  ON todos
  FOR ALL
  TO authenticated
  USING (uid() = user_id)
  WITH CHECK (uid() = user_id);

Service role bypass

Requests with only the service role key (no user JWT) bypass RLS — same idea as Supabase.