Skip to content

Commit 7daa987

Browse files
authored
revert: revert "feat: add supabase_superuser role" (#1987) (#2045)
This reverts the changes from PR #1987 which added the supabase_superuser role. The privileged_role is restored to 'postgres', the migration is removed, and the associated test changes are reverted.
1 parent 14b7165 commit 7daa987

File tree

7 files changed

+6
-90
lines changed

7 files changed

+6
-90
lines changed

ansible/files/postgresql_config/supautils.conf.j2

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ supautils.drop_trigger_grants = '{"postgres":["auth.audit_log_entries","auth.flo
99
supautils.privileged_extensions = 'address_standardizer, address_standardizer_data_us, autoinc, bloom, btree_gin, btree_gist, citext, cube, dblink, dict_int, dict_xsyn, earthdistance, fuzzystrmatch, hstore, http, hypopg, index_advisor, insert_username, intarray, isn, ltree, moddatetime, orioledb, pg_buffercache, pg_cron, pg_graphql, pg_hashids, pg_jsonschema, pg_net, pg_prewarm, pg_repack, pg_stat_monitor, pg_stat_statements, pg_tle, pg_trgm, pg_walinspect, pgaudit, pgcrypto, pgjwt, pgroonga, pgroonga_database, pgrouting, pgrowlocks, pgsodium, pgstattuple, pgtap, plcoffee, pljava, plls, plpgsql_check, plv8, postgis, postgis_raster, postgis_sfcgal, postgis_tiger_geocoder, postgis_topology, postgres_fdw, refint, rum, seg, sslinfo, supabase_vault, supautils, tablefunc, tcn, timescaledb, tsm_system_rows, tsm_system_time, unaccent, uuid-ossp, vector, wrappers'
1010
supautils.extension_custom_scripts_path = '/etc/postgresql-custom/extension-custom-scripts'
1111
supautils.privileged_extensions_superuser = 'supabase_admin'
12-
supautils.privileged_role = 'supabase_superuser'
12+
supautils.privileged_role = 'postgres'
1313
supautils.privileged_role_allowed_configs = 'auto_explain.*, deadlock_timeout, log_lock_waits, log_min_duration_statement, log_min_messages, log_parameter_max_length, log_replication_commands, log_statement, log_temp_files, pg_net.batch_size, pg_net.ttl, pg_stat_statements.*, pgaudit.log, pgaudit.log_catalog, pgaudit.log_client, pgaudit.log_level, pgaudit.log_relation, pgaudit.log_rows, pgaudit.log_statement, pgaudit.log_statement_once, pgaudit.role, pgrst.*, plan_filter.*, safeupdate.enabled, session_replication_role, track_functions, track_io_timing, wal_compression'
1414
supautils.reserved_memberships = 'pg_read_server_files, pg_write_server_files, pg_execute_server_program, supabase_admin, supabase_auth_admin, supabase_storage_admin, supabase_read_only_user, supabase_realtime_admin, supabase_replication_admin, supabase_etl_admin, dashboard_user, pgbouncer, authenticator'
1515
supautils.reserved_roles = 'supabase_admin, supabase_auth_admin, supabase_storage_admin, supabase_read_only_user, supabase_realtime_admin, supabase_replication_admin, supabase_etl_admin, dashboard_user, pgbouncer, service_role*, authenticator*, authenticated*, anon*'

migrations/db/migrations/20251215120934_supabase_superuser.sql

Lines changed: 0 additions & 10 deletions
This file was deleted.

nix/tests/expected/evtrigs.out

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -26,34 +26,3 @@ where p.prorettype = 'event_trigger'::regtype;
2626
pgsodium_trg_mask_update | supabase_admin | pgsodium | pgsodium.trg_mask_update | supabase_admin
2727
(12 rows)
2828

29-
-- postgres can create event triggers
30-
set role postgres;
31-
create function f()
32-
returns event_trigger
33-
language plpgsql
34-
as $$ begin end $$;
35-
create event trigger et
36-
on ddl_command_start
37-
execute function f();
38-
drop event trigger et;
39-
drop function f();
40-
reset role;
41-
-- supabase_etl_admin can create event triggers
42-
set role supabase_etl_admin;
43-
create schema s;
44-
create function s.f()
45-
returns event_trigger
46-
language plpgsql
47-
as $$ begin end $$;
48-
create event trigger et
49-
on ddl_command_start
50-
execute function s.f();
51-
-- postgres can't drop supabase_etl_admin's event triggers
52-
set role postgres;
53-
drop event trigger et;
54-
ERROR: must be owner of event trigger et
55-
set role supabase_etl_admin;
56-
drop event trigger et;
57-
drop function s.f();
58-
drop schema s;
59-
reset role;

nix/tests/expected/roles.out

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,7 @@ order by rolname;
5151
supabase_read_only_user | f | t | f | t | f | f | -1 | t |
5252
supabase_replication_admin | f | t | f | t | f | t | -1 | f |
5353
supabase_storage_admin | t | t | f | f | f | f | -1 | f |
54-
supabase_superuser | f | f | f | t | f | f | -1 | f |
55-
(31 rows)
54+
(30 rows)
5655

5756
select
5857
rolname,
@@ -92,8 +91,7 @@ order by rolname;
9291
supabase_read_only_user | {default_transaction_read_only=on}
9392
supabase_replication_admin |
9493
supabase_storage_admin | {search_path=storage,log_statement=none}
95-
supabase_superuser |
96-
(31 rows)
94+
(30 rows)
9795

9896
-- Check all privileges of the roles on the schemas
9997
select schema_name, privilege_type, grantee, default_for

nix/tests/expected/z_15_roles.out

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,12 @@ order by
2929
postgres | pg_signal_backend | f
3030
postgres | pgtle_admin | f
3131
postgres | service_role | f
32-
postgres | supabase_superuser | f
3332
supabase_etl_admin | pg_monitor | f
3433
supabase_etl_admin | pg_read_all_data | f
35-
supabase_etl_admin | supabase_superuser | f
3634
supabase_read_only_user | pg_monitor | f
3735
supabase_read_only_user | pg_read_all_data | f
3836
supabase_storage_admin | authenticator | f
39-
(23 rows)
37+
(21 rows)
4038

4139
-- Check all privileges of non-superuser roles on functions
4240
select

nix/tests/expected/z_17_roles.out

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -66,14 +66,12 @@ order by
6666
postgres | pg_signal_backend | t
6767
postgres | pgtle_admin | f
6868
postgres | service_role | t
69-
postgres | supabase_superuser | f
7069
supabase_etl_admin | pg_monitor | f
7170
supabase_etl_admin | pg_read_all_data | f
72-
supabase_etl_admin | supabase_superuser | f
7371
supabase_read_only_user | pg_monitor | f
7472
supabase_read_only_user | pg_read_all_data | f
7573
supabase_storage_admin | authenticator | f
76-
(25 rows)
74+
(23 rows)
7775

7876
-- Check version-specific privileges of the roles on the schemas
7977
select schema_name, privilege_type, grantee, default_for
@@ -162,14 +160,12 @@ order by
162160
postgres | pg_signal_backend | t
163161
postgres | pgtle_admin | f
164162
postgres | service_role | t
165-
postgres | supabase_superuser | f
166163
supabase_etl_admin | pg_monitor | f
167164
supabase_etl_admin | pg_read_all_data | f
168-
supabase_etl_admin | supabase_superuser | f
169165
supabase_read_only_user | pg_monitor | f
170166
supabase_read_only_user | pg_read_all_data | f
171167
supabase_storage_admin | authenticator | f
172-
(24 rows)
168+
(22 rows)
173169

174170
-- Check all privileges of non-superuser roles on functions
175171
select

nix/tests/sql/evtrigs.sql

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -10,38 +10,3 @@ join pg_proc p
1010
join pg_namespace n_func
1111
on p.pronamespace = n_func.oid
1212
where p.prorettype = 'event_trigger'::regtype;
13-
14-
-- postgres can create event triggers
15-
set role postgres;
16-
create function f()
17-
returns event_trigger
18-
language plpgsql
19-
as $$ begin end $$;
20-
create event trigger et
21-
on ddl_command_start
22-
execute function f();
23-
24-
drop event trigger et;
25-
drop function f();
26-
reset role;
27-
28-
-- supabase_etl_admin can create event triggers
29-
set role supabase_etl_admin;
30-
create schema s;
31-
create function s.f()
32-
returns event_trigger
33-
language plpgsql
34-
as $$ begin end $$;
35-
create event trigger et
36-
on ddl_command_start
37-
execute function s.f();
38-
39-
-- postgres can't drop supabase_etl_admin's event triggers
40-
set role postgres;
41-
drop event trigger et;
42-
43-
set role supabase_etl_admin;
44-
drop event trigger et;
45-
drop function s.f();
46-
drop schema s;
47-
reset role;

0 commit comments

Comments
 (0)