SQL Rechteverwaltung

0 | 25032 Aufrufe
Sie können diese Wikiseite nach der Anmeldung auf Webmasterpro bearbeiten. Helfen Sie mit und verbessern Sie "SQL Rechteverwaltung" mit Ihrem Wissen!

Anzeige Hier werben

Neuen Benutzer anlegen

Bevor wir uns die Rechteverwaltung in SQL genauer ansehen, legen wir zuerst einen neuen Benutzer an, um dessen Berechtigungen wir uns anschließend kümmern werden:

CREATE USER max IDENTIFIED BY 'topsecret';

Die Syntax des 'CREATE USER'-Befehls lautet:

CREATE USER benutzername IDENTIFIED BY passkey

Wobei die Verwendung der IDENTIFIED BY-Klausel optional ist.

Benutzer löschen

Neben dem Anlegen gehört das Löschen eines Benutzers zu den essentiellen Funktionen. Wir werden im folgenden Beispiel den vorher erstellten Benutzer löschen.

DROP USER max;

Rechte vergeben mit GRANT

Nun ist es an der Zeit, zu entscheiden, welche Berechtigungen wir unserem neu angelegten SQL-Benutzer geben möchten. Standardmäßig hat ein neuer Benutzer keine Rechte.

Nehmen wir einmal an, wir befinden uns in der Datenbank "bibliothek" und verwalten eine CD-Sammlung in der Tabelle "cds". Unser Neuling max darf neue Datensätze hinzufügen, und Daten aus der Tabelle abrufen, im Klartext bedeutet das, dass er INSERT- und SELECT-Anweisungen ausführen darf.

Die Syntax der GRANT-Anweisung lautet:

GRANT right ON table/database.table TO user (WITH GRANT OPTION)

Wenn Sie GRANT mit dem Zusatz WITH GRANT OPTION ausführen, dann darf der entsprechende Benutzer nicht nur selbst von seinem "neuen" Recht Gebrauch machen, sondern dieses auch an andere User im System weitergeben.

Angewendet auf unser Beispiel sieht die SQL-Anweisung folgendermaßen aus:

GRANT INSERT, SELECT ON bibliothek.cds TO max;

Weitere Beispiele für GRANT-Anweisungen

HintergedankeÜbersetzung in SQL
Alle Rechte für eine Datenbank vergeben GRANT ALL ON database TO user;
INSERT und DELETE für eine Datenbank vergeben
GRANT INSERT, DELETE ON database TO user;
Recht an zwei Benutzer vergeben GRANT INSERT ON database TO user1, user2;
Recht nur auf eine Tabelle vergeben GRANT SELECT ON database.table TO user;

GRANT ALL... ist analog zu GRANT SELECT, INSERT, UPDATE, DELETE...

Rechte aufheben mit REVOKE

REVOKE-Anweisung, evtl. Rollen


Wikiseite bearbeiten

Diese Seite kann von jedem registrierten Benutzer bearbeitet werden. Bisher hat 1 Person an der Seite "SQL Rechteverwaltung" mitgewirkt.

Sie haben einen Fehler entdeckt oder möchten etwas ergänzen? Dann können Sie nach der Anmeldung "SQL Rechteverwaltung" hier bearbeiten.

Mitarbeiter
  • hat keine Beschreibung angegeben. Eine Beschreibung kann man unter dem Punkt "Profil bearbeiten" im Kontrollzentrum eintragen.