Benutzungsbereich

Werbung
Einführung in Datenbanksysteme
Benutzungsbereich: Benutzertypen
Ein Benutzer ist jeder, der etwas mit der Datenbank zu tun hat: Endbenutzer, Entwickler, Administrator
traditionell drei Gruppen:
Endbenutzer: gelegentlich, einfache Oberfläche, kleinere Aufgaben
Anwendungsentwickler: Entwicklung von Anwendngssystemen
Administratoren: systemnahe oder anwendungsnahe Verwalter, Operatoren
SQL-artig (Oracle)
- create user, change user, drop user
- grant { connect | resource | dba } to meier identified by z97d
- grant select on person to meier
Ablauf: - Superuser wird bei Installation festgelegt.
- Superuser legt Datenbankadministratoren an.
- Jeder Datenbankadministrator legt seine Mitarbeiter-User an (resource, connect).
(2) Windows like (Access) visuell mit Menü, Tabelle, Ankreuzen:
->Menü->Zugriffsrechte->neu: Name, Passwort, Gruppe
->Menü->Zugriffsrechte->Gruppe: neu
->Menü->Zugriffsrechte->Berechtigungen
Die Benutzer eines Datenbanksystems befinden sich in dem Bereich zwischen EDV-Abteilung und
Anwender-/Fachabteilung. Sie unterscheiden sich nach Breite und Tiefe.
EDV-Abteilung
Fachabteilung
Endbenutzer
(Betriebsphase)
Benutzerservice
(Betriebsphase)
Anwendungsprogrammierer
(Einführungsphase, Betriebsphase, Änderungsphase)
Systemanalytiker
(Planungsphase)
Datenbankadministrator
(Einführungsphase, Betriebsphase, Änderungsphase)
DB-Operating
(Betriebsphase)
BEUTH/Steyer
Einführung in Datenbanksysteme
Benutzungsbereich: Benutzersicht (VIEW)
Es soll jeder nur das sehen, was er braucht und darf.
Definition : benutzerdefiniertes Fenster, spaltenweise, zeilenweise, virtuell, joined
Zweck
: Datenschutz und Übersichtlichkeit
Realisierung: Speicherung der Definition, Und-Verknüpfung mit jedem Befehl, der den Benutzersichtnamen
verwendet
Probleme : kostet das System etwas Mehrarbeit, bringt manchmal kryptische Fehlermeldungen
Beispiel
fremdsprachige Benutzersicht
deutsche Basistabelle
Benutzungsbereich: Privilegien
Es darf nicht jeder alles überall sehen und tun.
Definition : permanente (längerdauernde) Zugriffskontrolle bzgl. - welche Aktion auf welchem Objekt wer
Zweck
: Zugriffsschutz, Datensicherheit
Realisierung
: Planung in der Zeit der Systemanalyse, Schulung
Privilegientabelle, die als Filter für jedes Kommando fungiert
Probleme : kleine Verzögerung immer
Die Oberflächen werden immer "höher", d.h. entfernen sich immer mehr vom DBMS. Die
Benutzer werden immer datenbankunausgebildeter. SQL verschwindet in den Tiefen der
Systeme, bleibt aber als funktionaler Standard erhalten.
meier
Tab1
form1
BEUTH/Steyer
Operationen (select, insert, update, delete, definieren, benutzen)
x
x
Einführung in Datenbanksysteme
Benutzungsbereich: Sperren
Es dürfen nicht alle alles gleichzeitig machen.
Es gibt zwei Arten: exclusive: verbietet anderen Lesen und Schreiben,
shared: erlaubt wenigstens paralleles Lesen
SQL-artig (Oracle, 1989) einzeln:
lock table person in share mode
lock row with pid = 4711 in person in exclusive mode
oder neuer (1992): isolation levels
0 read uncommitted (ungesperrt)
1 read committed (1 Zeile kurz gesperrt, Beispiel Umbuchung)
2 repeatable read (1 Zeile länger gesperrt, Beispiel Gehaltserhöhung)
3 cursor stability (Ergebnismenge gesperrt)
entscheidend sind also die Sperrbereiche und die Sperrdauer
Windows like (Access):
Beim Öffnen schon ist ankreuzbar: gemeinsam oder exklusiv. Sperrstrategie kann eingestellt werden:
Aber die Granularität ist grob.
Definition
Zweck
Realisierung
: temporäre (kürzerdauernde) Zugriffskontrolle
- "exclusive" verbietet anderen Lesen und Schreiben
- "shared" erlaubt wenigstens paralleles Lesen
: operationale Datensicherheit
: Sperrliste, die als Filter für jedes Kommando fungiert
Probleme
: langes Warten evtl. oder gar Deadlock
BEUTH/Steyer
Herunterladen