Peter> Des Weiteren existiert noch ein Nutzer peter, der Datenbanken Peter> erstellen darf und eine Datenbank peterdb erstellt hat. Peter> Peter> Jetzt kann ich mich aber mit folgendem Befehl in die Peter> Datenbank von peter als user webdev einloggen: peter@host: ~$ Peter> psql -h localhost -d peterdb -U webdev other> Hier kann webdev jetzt munter Tabellen erstellen oder löschen. other> verweigert. Peter> Das verstehe ich nicht. Nur kurz, die logische Hierachie bei PostgreSQL ist, von oben beginnend - ORDBMS (Object-Relational Database Management System) selber hat - >= 0 Datenbanken wobei jede Datanbank wiederrum - >= 0 schema haben kann (grob: Sammulung von tables) Auf allen drei Ebenen kannst du Usern Rechte geben und/oder entziehen. Das public schema ist das default schema und immer aktiv. Du kannst dieses schema auch disablen und z.B. fuer den user peter und webdev zwei schema in _einer_ Datanbank anglegen wobei der eine auf das schema des anderen keinen Zugriff hat ... Das waere also auf unterster Ebene der Hierachie. Das selbe ist eine Ebene darueber moeglich d.h. per Datenbank. Noch eine Ebene darueber, per ORDBMS, genau das gleiche. Der Punkt ist, egal auf welcher Ebene, die permissions und wie sie entzogen/gesetzt werden sind immer die gleichen bzw. der gleiche Vorgang. Wie du sagst, am Besten psql verwenden und nicht irgend ein fancy tool wie z.B. pgadmin3 ... zumindest nicht bis man 100% verstanden hat was im Hintergrund passiert. Fuer mehr Details siehe http://www.postgresql.org/docs/8.4/interactive/user-manag.html und/oder man sich am Besten auf der PostgreSQL ml ;-]
Attachment:
pgpjCpGotoj22.pgp
Description: PGP signature