migration: create public.customers table with RLS
All checks were successful
Staging Build / build (push) Successful in 2m18s
All checks were successful
Staging Build / build (push) Successful in 2m18s
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
-- Erstellt die Tabelle direkt mit allen Feldern neu
|
||||
CREATE TABLE IF NOT EXISTS public.customers (
|
||||
id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
|
||||
created_at TIMESTAMP WITH TIME ZONE DEFAULT timezone('utc'::text, now()) NOT NULL,
|
||||
user_id UUID REFERENCES auth.users(id), -- Verknüpfung zu Supabase Auth
|
||||
|
||||
-- Neue Pflichtfelder für CASPOS Lizenzserver
|
||||
company_name TEXT NOT NULL,
|
||||
street TEXT NOT NULL,
|
||||
tax_id TEXT NOT NULL,
|
||||
contact_person TEXT NOT NULL,
|
||||
email TEXT NOT NULL,
|
||||
phone_no TEXT NOT NULL,
|
||||
|
||||
-- Optionales Feld
|
||||
dongle_no TEXT
|
||||
);
|
||||
|
||||
-- Zeilen-Sicherheit (RLS) direkt aktivieren
|
||||
ALTER TABLE public.customers ENABLE ROW LEVEL SECURITY;
|
||||
|
||||
-- Policy: Nutzer darf nur eigene Kundendaten sehen
|
||||
DROP POLICY IF EXISTS "Nutzer sehen nur eigene Daten" ON public.customers;
|
||||
CREATE POLICY "Nutzer sehen nur eigene Daten"
|
||||
ON public.customers
|
||||
FOR ALL
|
||||
TO authenticated
|
||||
USING (auth.uid() = user_id)
|
||||
WITH CHECK (auth.uid() = user_id);
|
||||
Reference in New Issue
Block a user