greenai / fix_rls_complete.sql
Surajkumaar's picture
d2
1978ca7
-- Complete RLS Policy Fix for All Tables
-- Run this in your Supabase SQL Editor
-- ============================================================
-- FIX 1: Allow INSERT to species table
-- ============================================================
-- Drop existing INSERT policies if any
DROP POLICY IF EXISTS "Allow service role to insert species" ON public.species;
DROP POLICY IF EXISTS "Allow inserts to species" ON public.species;
DROP POLICY IF EXISTS "Anyone can insert species" ON public.species;
-- Create new policy to allow INSERT operations
-- This allows the API (using anon key) to insert new species
CREATE POLICY "Allow authenticated inserts to species"
ON public.species FOR INSERT
WITH CHECK (true);
-- ============================================================
-- FIX 2: Allow INSERT to species_submissions table
-- ============================================================
-- Drop existing INSERT policies if any
DROP POLICY IF EXISTS "Allow inserts to submissions" ON public.species_submissions;
-- The schema already has this policy, but let's make sure it exists
-- CREATE POLICY "Anyone can submit new species"
-- ON public.species_submissions FOR INSERT
-- WITH CHECK (true);
-- (This should already exist from your schema)
-- ============================================================
-- Verify all policies
-- ============================================================
SELECT
schemaname,
tablename,
policyname,
permissive,
cmd as operation,
qual as using_expression,
with_check
FROM pg_policies
WHERE tablename IN ('species', 'species_submissions', 'recognition_logs')
ORDER BY tablename, policyname;