feat: contract analysis API improvements and DSGVO compliance updates
Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
@@ -70,10 +70,10 @@ CREATE INDEX contract_clauses_rating_idx ON contract_clauses(rating);
|
||||
ALTER TABLE contract_documents ENABLE ROW LEVEL SECURITY;
|
||||
|
||||
CREATE POLICY contract_documents_tenant_isolation ON contract_documents
|
||||
USING (tenant_id = current_setting('app.tenant_id')::uuid);
|
||||
USING (tenant_id = current_setting('app.tenant_id', true)::uuid);
|
||||
|
||||
CREATE POLICY contract_documents_tenant_insert ON contract_documents
|
||||
FOR INSERT WITH CHECK (tenant_id = current_setting('app.tenant_id')::uuid);
|
||||
FOR INSERT WITH CHECK (tenant_id = current_setting('app.tenant_id', true)::uuid);
|
||||
|
||||
-- RLS policies for contract_clauses (via document join)
|
||||
ALTER TABLE contract_clauses ENABLE ROW LEVEL SECURITY;
|
||||
@@ -81,7 +81,11 @@ ALTER TABLE contract_clauses ENABLE ROW LEVEL SECURITY;
|
||||
CREATE POLICY contract_clauses_tenant_isolation ON contract_clauses
|
||||
USING (document_id IN (
|
||||
SELECT id FROM contract_documents
|
||||
WHERE tenant_id = current_setting('app.tenant_id')::uuid
|
||||
WHERE tenant_id = current_setting('app.tenant_id', true)::uuid
|
||||
));
|
||||
|
||||
-- Force RLS for the app role (even table owners are subject to policies)
|
||||
ALTER TABLE contract_documents FORCE ROW LEVEL SECURITY;
|
||||
ALTER TABLE contract_clauses FORCE ROW LEVEL SECURITY;
|
||||
|
||||
-- Standard clauses are shared reference data (no RLS needed)
|
||||
|
||||
Reference in New Issue
Block a user