© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
SupabaseS
Supabase•4y ago•
13 replies
Brian

upsert() requires RLS SELECT operation?

I've got a public contact form that writes directly from client to a table. Since it's public, I allow everyone to INSERT and UPDATE but I'd prefer to disable SELECT. I'm using the
upsert()
upsert()
method since users can update fields (it's a multi-step form with incremental saves). It appears I have to enable a SELECT policy in order for the
upsert()
upsert()
to work. Is this true? Any other way to secure the table data more?

I am using
{ returning: 'minimal' }
{ returning: 'minimal' }
in my
upsert()
upsert()
method but it still fails (violates row-level security policy) without the SELECT policy in place.
Supabase banner
SupabaseJoin
Supabase gives you the tools, documentation, and community that makes managing databases, authentication, and backend infrastructure a lot less overwhelming.
45,816Members
Resources

Similar Threads

Was this page helpful?
Recent Announcements

Similar Threads

RLS get operation
SupabaseSSupabase / help-and-questions
4y ago
Select RLS for admins and users
SupabaseSSupabase / help-and-questions
5mo ago
Constraining select based on update RLS
SupabaseSSupabase / help-and-questions
4y ago
.insert().select() doesnt work due to rls
SupabaseSSupabase / help-and-questions
4mo ago