logoalt Hacker News

SOLAR_FIELDS • yesterday at 7:18 PM • 5 replies • view on HN

The part people are ignoring is Supabase's culpability in this matter: https://github.com/orgs/supabase/discussions/4547

This was supposedly fixed on October 30, but there are reports floating around that for existing projects, the defaults still apply.

Lovable deserves some heat for using this, but this was a choice that was made by Supabase many years ago to support making it easier to onboard potential customers, a deliberate tradeoff of less onboarding pain for less security.


Replies

yard2010 • yesterday at 8:03 PM

> I've realised that the supabaseKey needed for creating the client on the frontend also grants users access to the database by default.

I can't believe someone actually made this by design

➕ show 3 replies
fudged71 • yesterday at 8:55 PM

This 5 year old issue was only just fixed this October? Got a link to where it was fixed?

➕ show 1 reply
neathack • yesterday at 7:31 PM

While we’re at it, I was quite surprised to discover that Supabase leaks schema information through the `hint` field in error messages:

https://docs.postgrest.org/en/latest/references/errors.html

For example, if you try to access a table named "secret" that doesn’t exist, Supabase might return a hint saying, "Perhaps you meant the table 'public.super_secret'."

Thanks for volunteering that information, I guess.

➕ show 1 reply
mcoliver • yesterday at 10:03 PM

The amount of misconfigured supabase out there is astounding. And I'm not just talking about your mom's friend who wants a mahjong social network site. Companies backed by sand hill road VCs to the tunes of 10s of millions of dollars expose keys, don't have rls, set anon envs that are really full admin keys, don't rotate keys, etc.. the list goes on. It's wild.

Twirrim • yesterday at 11:05 PM

Supabase taking a leaf out of Firebase's playbook, I see.