sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur man snabbt släpper en användare med befintliga privilegier

Vad sägs om

DROP USER <username>

Detta är faktiskt ett alias för DROP ROLE .

Du måste uttryckligen ta bort alla privilegier som är kopplade till den användaren, även för att flytta dess ägande till andra roller (eller släppa objektet).

Detta uppnås bäst genom

REASSIGN OWNED BY <olduser> TO <newuser>

och

DROP OWNED BY <olduser>

Den senare kommer att ta bort alla privilegier som beviljats ​​användaren.

Se postgres-dokumentationen för DROP ROLE och den mer detaljerade beskrivningen av detta.


Tillägg:

Uppenbarligen kommer det bara att fungera om du försöker släppa en användare genom att använda kommandona som nämns här om du kör dem samtidigt som du är ansluten till samma databas som de ursprungliga GRANTS gjordes från, som diskuteras här:

https://www.postgresql.org/message-id/83894A1821034948BA27FE4DAA47427928F7C29922%40apde03.APD.Satcom.Local



  1. Vilken storlek använder du för varchar(MAX) i din parameterdeklaration?

  2. PARSE() vs CAST() vs CONVERT() i SQL Server:Vad är skillnaden?

  3. Mysql för att välja månadsvis post även om data inte finns

  4. Tips för att övervaka MariaDB Cluster