PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come impedire a un utente di poter vedere altri database e le tabelle di altri database?

Ogni utente può vedere altri database e ruoli elencati, ma non dovrebbe mai essere in grado di vedere le tabelle in altri database.

Se revochi il privilegio CONNECT su tutti i database tranne quello assegnato, l'utente non potrà accedere ai contenuti di altri database.

I ruoli e i nomi dei database sono globali e non sono facilmente bloccabili. Puoi provare il suggerimento di Frank Heikens di revoche selettive sulle tabelle di sistema, ma corri dei rischi per farlo. Gli sviluppatori PostgreSQL sulle mailing list di usenet hanno scoraggiato la manomissione dell'accesso ai cataloghi di sistema.

Psql, tra gli altri strumenti, presuppone che saranno disponibili e funzioneranno male senza di essi.

Perché conoscere i nomi di altri database e ruoli così male?