<< >> Up Title Contents Index

Die DBAs installieren weitere Benutzer

Die Datenbankadministratoren legen die ihnen untergeordneten Benutzer sowie die ihrem Aufgabenbereich zugeordneten Tabellen an. Sie haben weiterhin die Aufgabe, Benutzungsrechte auf ihre Daten an andere weiterzugeben.

Um die Benutzerstruktur zu realisieren, definiert der DBA 'reisen10' die Benutzergruppe 'reisen10gruppe'. Anschließend werden die zu dieser Gruppe gehörigen Benutzer eingerichtet.

CREATE USERGROUP reisen10gruppe
       RESOURCE

CREATE USER reisen11
       PASSWORD r11
       USERGROUP reisen10gruppe

CREATE USER reisen12
       PASSWORD r12
       USERGROUP reisen10gruppe

CREATE USER reisen13
       PASSWORD r13
       USERGROUP reisen10gruppe

Mit dem Gruppennamen selbst kann man sich nicht bei der Datenbank anmelden, sondern mit dem Namen des Gruppenmitglieds. Objekte wie beispielsweise Tabellen werden jedoch unter dem Gruppennamen abgelegt.

'reisen20' legt Einzelbenutzer ohne Gruppenzugehörigkeit an. 'reisen21' und 'reisen22' können nicht zu einer Gruppe zusammengefaßt werden, da sie unterschiedlich privilegiert sind. 'reisen22' als STANDARD-Benutzer soll nicht das Recht besitzen, eigene Tabellen zu kreieren.

CREATE USER reisen21
       PASSWORD r21
       RESOURCE

CREATE USER reisen22
       PASSWORD r22
       STANDARD

Dem DBA 'reisen10' wird die Verwaltung der Kundentabelle zugeordnet. Er entscheidet, daß die Mitglieder seiner Benutzergruppe das Recht besitzen sollen, die Kundendaten zu pflegen, jedoch keine Änderungen an der Struktur der Tabelle vornehmen können sollen.

GRANT SELECT, UPDATE, DELETE, INSERT
      ON kunde
      TO reisen10gruppe

Alle im System befindlichen Nutzer sollen jedoch die Möglichkeit besitzen, lesend auf die Daten zuzugreifen. Die Privilegienvergabe braucht nicht für jeden Benutzer einzeln zu erfolgen, sondern kann mit Hilfe des Schlüsselwortes PUBLIC erreicht werden.

GRANT SELECT
      ON kunde
      TO PUBLIC

'reisen20' ist für die Tabellen 'hotel', 'raum' und 'buchung' zuständig. Er räumt seinen Benutzern 'reisen21' und 'reisen22' unterschiedliche Rechte für seine Tabellen ein.

GRANT SELECT, UPDATE, DELETE, INSERT
      ON hotel, raum, buchung
      TO reisen21

GRANT SELECT, UPDATE
      ON hotel
      TO reisen22

Der Benutzergruppe sollen ebenfalls Möglichkeiten zur Bearbeitung der drei Tabellen gegeben werden. 'reisen20' möchte die Vergabe von Rechten jedoch lieber dem DBA überlassen, zu dem die Gruppe gehört. Er versetzt also 'reisen10' in die Lage, sowohl mit seinen Tabellen arbeiten zu können als auch Privilegien dafür zu verleihen. Dies wird dem System durch den Zusatz WITH GRANT OPTION bekannt gemacht.

GRANT ALL
      ON hotel, buchung, kunde
      TO reisen10
      WITH GRANT OPTION
'reisen10' hat alle Rechte für die drei Tabellen erhalten und gibt einen Teil davon an die Benutzergruppe weiter. Da es sich nicht um seine eigenen Tabellen handelt, muß der Name vollständig mit dem Besitzer angegeben werden.

GRANT SELECT, UPDATE, DELETE, INSERT
      ON reisen20.hotel
      TO reisen10gruppe

GRANT SELECT
      ON reisen20.buchung
      TO reisen10gruppe


<< >> Up Title Contents Index