Files
Cibello-app/infrastructure/deployment/create-database.sql
T
2026-08-05 19:21:11 +07:00

30 lines
1.2 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- Körs som RDS master-användare EN gång (spec §52).
-- Separat databas + användare med minsta möjliga privilegier.
-- Ingen delning av andras tabeller.
CREATE DATABASE app; -- byt namn per varumärke (brand.config.json slug)
-- Byt ut lösenordet mot ett genererat värde från Secrets Manager!
CREATE USER app_user WITH PASSWORD 'CHANGE_ME_FROM_SECRETS_MANAGER';
-- Anslut till den nya databasen och kör:
\connect app
-- Sök-extensions (i18n M7): skapas av master appanvändaren saknar rättighet.
CREATE EXTENSION IF NOT EXISTS unaccent;
CREATE EXTENSION IF NOT EXISTS pg_trgm;
-- Låst schema: appanvändaren äger public-schemat i sin egen databas
GRANT CONNECT ON DATABASE app TO app_user;
GRANT USAGE, CREATE ON SCHEMA public TO app_user;
ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT SELECT, INSERT, UPDATE, DELETE ON TABLES TO app_user;
ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT USAGE, SELECT ON SEQUENCES TO app_user;
-- Ingen superuser, ingen replication, ingen åtkomst till andra databaser:
REVOKE ALL ON DATABASE postgres FROM app_user;
-- Migrationer körs av samma användare (CREATE på schemat räcker för drizzle).
-- Vid senare utbrytning till egen RDS: pg_dump/pg_restore enligt docs/infrastruktur.md.