Hoe verander je een gebruiker in Superuser in PostgreSQL

  • Een nieuwe gebruiker aanmaken
  • bestaande gebruikersmachtigingen bekijken
  • bestaande gebruikersmachtigingen wijzigen
    • SUPERUSER toestemming
    • rechten intrekken

Het wijzigen van gebruikersrechten binnen PostgreSQL kan variëren van vrij eenvoudig tot extreem complex, afhankelijk van de permissieve granulariteit die daadwerkelijk vereist is., In de meeste gevallen is het echter het krachtige ALTER USER commando dat gebruikt moet worden om alles te doen, van het toestaan van gebruikers om in te loggen, databases aan te maken, rollen te beheren, en zelfs een SUPERUSER account te worden.

We zullen in het kort de kracht van het ALTER USER Commando onderzoeken, zodat u eenvoudig een verscheidenheid aan toestemmingen en verwijderingen kunt uitvoeren als dat nodig is.,

een nieuwe gebruiker aanmaken

voordat we gebruikersrechten gaan wijzigen, moeten we een nieuw gebruikersaccount aanmaken (gewoonlijk aangeduid als een ROLE) om mee te knoeien.

om te beginnen tonen we alle bestaande gebruikers:

=# SELECT usename FROM pg_user; usename---------- postgres(1 row)

standaard is postgresde enige gebruiker die bestaat, dus willen we een nieuwe gebruiker vanlibrarianmaken om onzelibrarydatabase., Dit kan worden bereikt met CREATE USER Commando:

=# CREATE USER librarian;CREATE ROLE=# SELECT usename FROM pg_user; usename----------- postgres librarian(2 rows)

het bekijken van bestaande gebruikersmachtigingen

Het kan vaak nuttig zijn om de bestaande machtigingen te onderzoeken die aan de gebruikers in het systeem zijn toegewezen. Dit kan eenvoudig worden bereikt met het \du commando van het psql prompt:

=# \du List of roles Role name | Attributes | Member of-----------+------------------------------------------------+----------- librarian | | {} postgres | Superuser, Create role, Create DB, Replication | {}

We kunnen duidelijk zien dat, hoewel we nu een nieuwe gebruiker, We moeten het een aantal rechten toewijzen.,

bestaande gebruikersmachtigingen wijzigen

nu onze librarian gebruiker bestaat, kunnen we beginnen met ALTER USER om de machtigingen te wijzigen die zijn verleend aan librarian.,

Het basis formaat van het ALTER USER bevat de naam van de gebruiker (of ROLE), gevolgd door een serie options om te informeren PostgreSQL die toelatende aanpassingen te maken:

=# ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;

Deze opties variëren van CREATEDB, CREATEROLE, CREATEUSER en ook SUPERUSER. Bovendien, de meeste opties hebben ook een negatieve tegenhanger, het informeren van het systeem dat u de gebruiker die specifieke toestemming te weigeren., Deze optienamen zijn dezelfde als hun toegewezen tegenhanger, maar worden voorafgegaan door NO (bijvoorbeeld NOCREATEDB, NOCREATEROLE, NOSUPERUSER)., id=”329cbba936″>

optie toe te wijzen onze librarian gebruiker SUPERUSER toestemming:

=# ALTER USER librarian WITH SUPERUSER;ALTER ROLE

Zeker genoeg, als we ons toestemming lijst nu, we zullen zien librarian de nieuwe SUPERUSER toestemming willen we:

het Intrekken van Machtigingen

In het geval dat wij een fout maken en toewijzen van een toestemming die we later wenst in te trekken, gewoon kwestie van dezelfde ALTER USER commando, maar het toevoegen van de NO prefix voor de toelatende opties worden ingetrokken.,

bijvoorbeeld, we kunnen SUPERUSER verwijderen uit onze librarian gebruiker als volgt:

Share

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *