This commit is contained in:
Peter Smit
2025-09-26 12:53:08 +02:00
parent 6ffa2aa4b4
commit 35a29ae199

View File

@@ -19,27 +19,27 @@ create_db_and_user() {
CREATE DATABASE "$db_name";
-- Create user with password
CREATE USER $db_user WITH ENCRYPTED PASSWORD '$db_password';
CREATE USER "$db_user" WITH ENCRYPTED PASSWORD '$db_password';
-- Grant connection to the specific database only
GRANT CONNECT ON DATABASE "$db_name" TO $db_user;
GRANT CONNECT ON DATABASE "$db_name" TO "$db_user";
-- Make user owner of the database
ALTER DATABASE "$db_name" OWNER TO $db_user;
ALTER DATABASE "$db_name" OWNER TO "$db_user";
-- Connect to the specific database to set schema permissions
\c "$db_name"
-- Grant schema permissions
GRANT ALL ON SCHEMA public TO $db_user;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO $db_user;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO $db_user;
GRANT ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public TO $db_user;
GRANT ALL ON SCHEMA public TO "$db_user";
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO "$db_user";
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO "$db_user";
GRANT ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public TO "$db_user";
-- Set default privileges for future objects
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO $db_user;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON SEQUENCES TO $db_user;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON FUNCTIONS TO $db_user;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO "$db_user";
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON SEQUENCES TO "$db_user";
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON FUNCTIONS TO "$db_user";
-- Switch back to postgres database
\c postgres