Πώς να δημιουργήσετε χρήστη σε PostgreSQL Χρήση του PgAdmin

⚡ Έξυπνη Σύνοψη

Δημιουργία χρήστη στο PostgreSQL μπορεί να γίνει οπτικά στο pgAdmin ή με την εντολή CREATE USER στο SQL Shell. Στη συνέχεια, μπορείτε να εκχωρήσετε δικαιώματα με την εντολή GRANT, να τροποποιήσετε ρόλους με την εντολή ALTER USER και να καταργήσετε λογαριασμούς με την εντολή DROP USER.

  • 🖱️ Δημιουργία στο pgAdmin: Κάντε δεξί κλικ στην επιλογή Σύνδεση/Ρόλοι ομάδας, εισαγάγετε ένα όνομα, ορίστε έναν κωδικό πρόσβασης και δικαιώματα και, στη συνέχεια, αποθηκεύστε για να δημιουργήσετε τον χρήστη.
  • 💻 Εντολή ΔΗΜΙΟΥΡΓΙΑΣ ΧΡΗΣΤΗ: Στο SQL Shell, η εντολή CREATE USER name WITH ορίζει τα στοιχεία σύνδεσης, τον υπερχρήστη και τον κωδικό πρόσβασης σε μία εντολή.
  • 🔑 Χορήγηση πρόσβασης: Η εντολή ΧΟΡΗΓΗΣΗ ΟΛΩΝ ΤΩΝ ΠΡΟΝΟΜΙΩΝ ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ χρήστη δίνει σε έναν υπάρχοντα χρήστη πρόσβαση σε μια βάση δεδομένων.
  • 🔧 ΑΛΛΑΓΗ ΧΡΗΣΤΗ: Η εντολή ALTER USER προσαρμόζει τα δικαιώματα ενός ρόλου, προσθέτοντας ή ανακαλώντας δικαιώματα όπως SUPERUSER.
  • 🗑️ ΑΠΟΣΤΟΛΗ ΧΡΗΣΤΗ: Η εντολή DROP USER καταργεί έναν λογαριασμό, αλλά μόνο αφού δεν κατέχει πλέον κανένα αντικείμενο βάσης δεδομένων.
  • 🧾 Ρόλος έναντι Χρήστη: Η επιλογή ΔΗΜΙΟΥΡΓΙΑ ΧΡΗΣΤΗ έχει προεπιλεγμένη τιμή ΣΥΝΔΕΣΗ, ενώ η επιλογή ΔΗΜΙΟΥΡΓΙΑ ΡΟΛΟΥ έχει προεπιλεγμένη τιμή ΧΩΡΙΣ ΣΥΝΔΕΣΗ. Διαφορετικά, είναι οι ίδιες.

Πώς να δημιουργήσετε χρήστη σε PostgreSQL Χρήση του PgAdmin

Πώς να δημιουργήσετε PostgreSQL Χρήστης στο PgAdmin

Ακολουθεί μια διαδικασία βήμα προς βήμα σχετικά με τον τρόπο δημιουργίας χρήστη PostgreSQL PgAdmin:

Βήμα 1) Κάντε δεξί κλικ στο Login

Στο πρώτο βήμα, κάντε δεξί κλικ στο Login Group Role -> Create -> Κάντε κλικ στο Login Group Role…

δημιουργώ PostgreSQL Χρήστης στο PgAdmin

Βήμα 2) Δημιουργία ρόλου σύνδεσης/ομάδας

Τώρα, Πληκτρολογήστε το όνομα για το Login

δημιουργώ PostgreSQL Χρήστης στο PgAdmin

Βήμα 3) Κάντε κλικ στο Definition & Enter Details

  1. Εισάγετε τον κωδικό πρόσβασης
  2. Ημερομηνία λήξης για τον λογαριασμό

δημιουργώ PostgreSQL Χρήστης στο PgAdmin

Βήμα 4) Το τμήμα Privilege

  1. Toggle Μπορώ να συνδεθείτε με το κουμπί YES
  2. Toggle Υπερχρήστης στο ΝΑΙ

δημιουργώ PostgreSQL Χρήστης στο PgAdmin

Βήμα 5) The SQL τμήμα

  1. Θα δείτε το ερώτημα SQL για τη δημιουργία χρήστη σύμφωνα με τις επιλογές που έγιναν στα προηγούμενα βήματα
  2. Κάντε κλικ στο κουμπί Αποθήκευση

δημιουργώ PostgreSQL Χρήστης στο PgAdmin

Βήμα 6) Ο ρόλος δημιουργείται

Τώρα, ο ρόλος αντικατοπτρίζεται στο δέντρο αντικειμένων.

δημιουργώ PostgreSQL Χρήστης στο PgAdmin

Βήμα 7) Δημιουργία βάση δεδομένων

Τώρα, εκχωρήστε το myguru ιδιοκτήτη σε αυτό όπως φαίνεται στο παρακάτω παράδειγμα δημιουργίας χρήστη Postgres.

δημιουργώ PostgreSQL Χρήστης στο PgAdmin

Βήμα 8) Η γραμμή εντολών

Τώρα, μπορείτε να δείτε ότι ο ιδιοκτήτης είναι myguru.

δημιουργώ PostgreSQL Χρήστης στο PgAdmin

PostgreSQL Δημιουργία χρήστη SQLSshell (γραμμή εντολών)

Μπορείτε να δημιουργήσετε έναν χρήστη χρησιμοποιώντας την εντολή της γραμμής εντολών

ΔΗΜΙΟΥΡΓΙΑ ΧΡΗΣΤΗ

Αυτή η μέθοδος δημιουργίας χρήστη με κωδικό πρόσβασης Postgres είναι πιο βολική για προγραμματιστές και διαχειριστές καθώς έχουν πρόσβαση στην κονσόλα του PostgreSQL υπηρέτης. Επιπλέον, χρειάζονται δημιουργία και εκτέλεση χρήστη Postgres με μία μόνο εντολή αντί για σύνδεση και χρήση της διεπαφής του PostgreSQL πελάτη.

Σύνταξη:

CREATE USER name [ WITH ] option [ ... ]

where option can be:

      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
    | INHERIT | NOINHERIT
    | LOGIN | NOLOGIN
    | REPLICATION | NOREPLICATION
    | BYPASSRLS | NOBYPASSRLS
    | CONNECTION LIMIT connlimit
    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
    | VALID UNTIL 'timestamp'
    | IN ROLE role_name [, ...]
    | IN GROUP role_name [, ...]
    | ROLE role_name [, ...]
    | ADMIN role_name [, ...]
    | USER role_name [, ...]
    | SYSID uid

Παράδειγμα:

CREATE USER tom;

θα δημιουργήσει ένα user tom

CREATE USER tom WITH SUPERUSER;

Θα δημιουργηθεί ένας χρήστης tom με δικαιώματα υπερχρήστη. Ας δούμε το ακόλουθο παράδειγμα.

Βήμα 1) Δημιουργούμε έναν υπερχρήστη με ισχύ έως τις 3rd Απρίλιος 2025 11:50:38 IST. Πληκτρολογήστε την ακόλουθη εντολή

CREATE USER mytest WITH
	LOGIN
	SUPERUSER
	CREATEDB
	CREATEROLE
	INHERIT
	NOREPLICATION
	CONNECTION LIMIT -1
	VALID UNTIL '2025-04-03T11:50:38+05:30'
	PASSWORD '123456';

Δημιουργήστε ένα χρήστη SQLSell

Βήμα 2) Εισαγάγετε την εντολή \du στη λίστα ελέγχου των χρηστών

Δημιουργήστε ένα χρήστη SQLSell

ΣΗΜΕΊΩΣΗ: Η εντολή CREATE USER είναι η ίδια με την εντολή CREATE ROLE. Η διαφορά μεταξύ των δύο εντολών είναι ότι όταν γράφεται η εντολή CREATE user του Postgres, βρίσκεται από προεπιλογή σε κατάσταση LOGIN, ενώ η εντολή NOLOGIN θεωρείται δεδομένη όταν χρησιμοποιείται η επιλογή CREATE ROLE.

Προσθέστε έναν υπάρχοντα χρήστη σε μια βάση δεδομένων

Μπορείτε να εκχωρήσετε σε έναν χρήστη δικαιώματα πρόσβασης σε μια βάση δεδομένων.

Για παράδειγμα, παραχωρούμε στον χρήστη "mytest" όλα τα δικαιώματα στο user guru99

GRANT ALL PRIVILEGES ON DATABASE guru99 TO mytest;

Προσθέστε έναν υπάρχοντα χρήστη σε μια βάση δεδομένων

Μετά την εκτέλεση του PostgreSQL Προσθήκη εντολής χρήστη, ο χρήστης θα μπορεί να έχει πρόσβαση στη βάση δεδομένων με τα δεδομένα δικαιώματα.

Η εντολή GRANT είναι πολύ ισχυρή. Μπορείτε να δώσετε αναλυτικά προνόμια όπως Επιλογή, Εισαγωγή, Ενημέρωση σε έναν χρήστη.

PostgreSQL Ενημέρωση USER

Αλλαγή υφιστάμενων δικαιωμάτων χρήστη

Τώρα που υπάρχει ο νέος χρήστης "mytest", μπορείτε να χρησιμοποιήσετε το ALTER USER για να αλλάξετε τα δικαιώματα που έχουν εκχωρηθεί στον βιβλιοθηκονόμο.

Η μορφή του ALTER USER Postgres περιλαμβάνει το όνομα του χρήστη που ακολουθείται από ορισμένες επιλογές για να το πει PostgreSQL ποιες επιτρεπτές αλλαγές να γίνουν:

ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;

Revoking Άδειες

Πρέπει να χρησιμοποιήσετε αυτήν την εντολή όταν κάνετε λάθος και εκχωρείτε εσφαλμένα άδεια την οποία μπορεί να θέλετε να ανακαλέσετε. Μπορείτε να χρησιμοποιήσετε την εντολή ALTER USER χωρίς πρόθεμα πριν από τις επιτρεπτές επιλογές.

Για παράδειγμα, μπορούμε να καταργήσουμε την κατάσταση SUPERUSER από το mytest όπως:

ALTER USER mytest WITH NOSUPERUSER;

Χρησιμοποιώντας το \du, θα παρατηρήσετε ότι το δικαίωμα Superuser έχει αφαιρεθεί.

Revoking Άδειες

Εκχώρηση άδειας

Μπορείτε να χρησιμοποιήσετε την άδεια χρήστη SUPERUSER πίσω "mytest" χρησιμοποιώντας την ακόλουθη εντολή

ALTER USER mytest WITH SUPERUSER;

Χρησιμοποιώντας το \du, θα παρατηρήσετε ότι προστίθεται το δικαίωμα Superuser.

Εκχώρηση άδειας

PostgreSQL Διαγραφή χρήστη

Μπορείτε να χρησιμοποιήσετε τη διαγραφή οποιουδήποτε χρήστη εάν είστε βέβαιοι ότι ο συγκεκριμένος χρήστης δεν είναι πλέον για τη βάση δεδομένων σας. Σημειώστε ότι η διαγραφή των χρηστών δεν θα επηρεάσει ποτέ την πραγματική βάση δεδομένων.

Syntax: DROP USER [user]

Για να διαγράψετε οποιονδήποτε χρήστη, πρέπει να βεβαιωθείτε ότι ο χρήστης είναι κάτοχος της βάσης δεδομένων. Διαφορετικά, ενδέχεται να λάβετε ένα μήνυμα σφάλματος.

ERROR:  role "username" cannot be dropped because some objects depend on it

Παράδειγμα:

  1. Ο λογαριασμός "myguru" είναι κάτοχος της βάσης δεδομένων "demoDB".
  2. Εισαγάγετε την εντολή DROP USER myguru
  3. Εμφανίζεται το σφάλμα

PostgreSQL Διαγραφή χρήστη

Μόλις αλλάξουμε τον κάτοχο της βάσης δεδομένων, ο χρήστης μπορεί να διαγραφεί

PostgreSQL Διαγραφή χρήστη

Cheat Sheet

Εδώ είναι σημαντικές εντολές

Εντολές Περιγραφή
CREATE USER [user]
Εντολή για δημιουργία χρήστη
ALTER USER role_specification
Αλλαγή υφιστάμενων δικαιωμάτων χρήστη
ALTER USER [user]
Revoking Άδειες
ALTER USER [user name] WITH SUPERUSER
Εκχώρηση άδειας
DROP USER [user]
Εντολή για διαγραφή χρήστη

Συχνές Ερωτήσεις

Στο κέλυφος psql, εκτελέστε την εντολή \du για να εμφανίσετε όλους τους ρόλους και τα χαρακτηριστικά τους. Μπορείτε επίσης να υποβάλετε ερώτημα στον κατάλογο συστήματος με την εντολή SELECT rolname FROM pg_roles για να λάβετε τις ίδιες πληροφορίες μέσω προγραμματισμού.

Χρησιμοποιήστε την εντολή ALTER USER, για παράδειγμα ALTER USER mytest WITH PASSWORD 'newpassword'. Η αλλαγή τίθεται σε ισχύ αμέσως. Οι κωδικοί πρόσβασης αποθηκεύονται κρυπτογραφημένοι και μόνο οι υπερχρήστες ή ο ίδιος ο χρήστης μπορούν να τους αλλάξουν.

In PostgreSQL, οι χρήστες και οι ρόλοι είναι το ίδιο αντικείμενο. Η συνάρτηση CREATE USER δημιουργεί έναν ρόλο που μπορεί να συνδεθεί από προεπιλογή, ενώ η συνάρτηση CREATE ROLE δημιουργεί έναν που δεν μπορεί να συνδεθεί εκτός εάν προσθέσετε το χαρακτηριστικό LOGIN.

Η Τεχνητή Νοημοσύνη μπορεί να δημιουργήσει εντολές CREATE USER, GRANT και ALTER USER από μια απλή περιγραφή της πρόσβασης που χρειάζεστε και να εξηγήσει κάθε δικαίωμα. Αυτό σας βοηθά να εφαρμόσετε ασφάλεια με τα λιγότερα δικαιώματα χωρίς να απομνημονεύσετε σύνταξη.

Ναι. Η τεχνητή νοημοσύνη μπορεί να προτείνει λεπτομερείς εντολές GRANT που δίνουν μόνο τα απαιτούμενα δικαιώματα, να προειδοποιεί για την παραχώρηση ευρείας πρόσβασης υπερχρήστη και να συνιστά τη χρήση ρόλων για την ομαδοποίηση δικαιωμάτων για ευκολότερη και ασφαλέστερη διαχείριση.

Συνοψίστε αυτήν την ανάρτηση με: