![Page 1: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/1.jpg)
Sicherheitsaspekte
Identifikation und Authentisierung
Autorisierung und Zugriffskontrolle
Auditing
Sicherheit im DBMS
![Page 2: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/2.jpg)
SzenarienLiteraturdatenbank in der Hochschule: geringes Sicherheitsbedürfnis
ERP-Datenbank in einem Betrieb:Vertrauliche DatenEnthüllung kann zu finanziellen Verlusten führen
Datenbank einer BankEnthüllung von Daten kann zum Bankrott der Bank führen
Datenbank in einer militärischen Anlage
![Page 3: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/3.jpg)
AngriffsartenMissbrauch von Autorität
Inferenz (“Volkszählung”) und Aggregation (“Verkäufe”)
Maskierung
Umgehung der Zugriffskontrolle (“Reviewing von Papern”)
Browsing
Trojanische Pferde
Versteckte Kanäle
![Page 4: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/4.jpg)
Discretionary Access ControlZugriffsregeln (o, s, t, p, f) mit
o ∈ O, der Menge der Objekte (z.B. Relationen, Tupel, Attribute),
s ∈ S, der Menge der Subjekte (z.B. Benutzer, Prozesse),
t ∈ T, der Menge der Zugriffsrechte (z.B. T = {lesen, schreiben, löschen}),
p ein Prädikat (z.B. Rang = ‚C4‘ für die Relation Professoren), und
f ein Boolescher Wert, der angibt, ob s das Recht (o, t, p) an ein anderes Subjekt s‘ weitergeben darf.
![Page 5: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/5.jpg)
Discretion Access ControlRealisierung:
Zugriffsmatrix
Sichten
„Query Modification“
Nachteile:
Erzeuger der Daten = Verantwortlicher für deren Sicherheit
![Page 6: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/6.jpg)
Zugriffskontrolle in SQLBeispiel:
grant select
on Professoren
to eickler;
grant update (MatrNr, VorlNr, PersNr)
on prüfen
to eickler;
![Page 7: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/7.jpg)
Zugriffskontrolle in SQLWeitere Rechte:
deleteinsertreferences
Weitergabe von Rechten:
with grant option
Entzug von Rechten:
revoke update (MatrNr, VorlNr, PersNr)on prüfenfrom eickler cascade;
![Page 8: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/8.jpg)
SichtenRealisierung des Zugriffsprädikats:
create view ErstSemestler asselect *from Studentenwhere Semester = 1;
grant selecton ErstSemestlerto tutor;
Schutz von Individualdaten durch Aggregation:
create view VorlesungsHärte (VorlNr, Härte) asselect VorlNr, avg(Note)from prüfengroup by VorlNr;
![Page 9: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/9.jpg)
Auditing
Beispiele:
audit session by system
whenever not successful;
audit insert, delete, update on Professoren;
![Page 10: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/10.jpg)
Verfeinerungen des Autorisierungsmodells
explizite / implizite Autorisierungpositive / negative Autorisierungstarke / schwache Autorisierung
Autorisierungsalgorithmus:
wenn es eine explizite oder implizite starke Autorisierung (o, s, t) gibt,dann erlaube die Operation
wenn es eine explizite oder implizite starke negative Autorisierung (o, s, ¬t)gibt, dann verbiete die Operation
ansonstenwenn es eine explizite oder implizite schwache Autorisierung [o, s, t] gibt,
dann erlaube die Operationwenn es eine explizite oder implizite schwache Autorisierung [o, s, ¬t]
gibt, dann verbiete die Operation
![Page 11: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/11.jpg)
Implizite Autorisierung von Subjekten
explizite positive Autorisierung⇒implizite positive Autorisierung auf allen höheren Stufen
explizite negative Autorisierung⇒implizite negative Autorisierung auf allen niedrigeren Stufen
Rektor / in
Angestellte
Referatsleiter
Verwaltungs-angestellte
Dekane
Professoren
wissenschaftlicheAngestellte
![Page 12: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/12.jpg)
Starke und schwache Autorisierungam Beispiel der Autorisierung von Subjekten
Rektor / in
Angestellte
Referatsleiter
Verwaltungs-angestellte
Dekane
Professoren
wissenschaftlicheAngestellte
starke pos. Autorisierung starke neg. Autorisierung
schwache pos. Autorisierung schwache neg. Autorisierung
Aushilfen
Leserecht: Name/Raum aller Angestellten
Leserecht: Name/Raum aller
Angestellten
![Page 13: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/13.jpg)
Implizite Autorisierung von Operationen
explizite positive Autorisierung⇒implizite positive Autorisierung auf allen niedrigeren Stufen
explizite negative Autorisierung⇒implizite negative Autorisierung auf allen höheren Stufen
schreiben
lesen
![Page 14: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/14.jpg)
Implizite Autorisierung von Objekten
Implikationen abhängig von Operation
Datenbank
Schema
Relation
Tupel
Attribut
![Page 15: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/15.jpg)
Implizite Autorisierung entlang einer Typhierarchie
Angestellte
is-a
Assistenten Professoren
PersNr
Name
GebDatum
GebDatum
Name
PersNr
Rang
Raum
GebDatum
Name
PersNr
Fachgebiet
![Page 16: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/16.jpg)
Implizite Autorisierung entlang einer Typhierarchie
Benutzergruppen:
Verwaltungsangestellte dürfen die Namen aller Angestellten
lesen
wissenschaftliche Angestellte dürfen Namen und Rang aller
Professoren lesen
Anfragen:
lese die Namen aller Angestellten
lese Namen und Rang aller Professoren
![Page 17: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/17.jpg)
Implizite Autorisierung entlang einer Typhierarchie
Regeln:
Benutzer mit einem Zugriffsrecht auf einem Objekttypen
haben auf die geerbten Attribute in den Untertypen ein
gleichartiges Zugriffsrecht
Ein Zugriffsrecht auf einen Objekttyp impliziert auch ein
Zugriffsrecht auf alle von Obertypen geerbte Attribute in
diesem Typ.
Ein Attribut, das in einem Untertyp definiert wurde, ist nicht
von einem Obertyp aus erreichbar.
![Page 18: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/18.jpg)
Mandatory Access Controlhierarchische Klassifikation von Vertrauenswürdigkeit und Sensitivität
clear(s), mit s Subjekt (clearance)
class(o), mit o Objekt (classification)
Ein Subjekt s darf ein Objekt o nur lesen, wenn das Objekt eine geringere Sicherheitseinstufung besitzt (class(o) ≤ clear(s)).
Ein Objekt o muss mit mindestens der Einstufung des Subjektes s geschrieben werden (clear(s) ≤ class(o)).
![Page 19: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/19.jpg)
Multilevel-DatenbankenBenutzer soll sich der Existenz unzugänglicher Daten nicht bewusst sein
Beispiel (TC = Klassifizierung des gesamten Tupels = Maximum der Attributklassifizierungen):
sgspitzelnsgMata, Harrysg008sgsgmeuchelngBlond, Jamesg007sgSCSpezialitätNCNameKCKennungTC
Agenten
Sichtweise eines „geheim“ eingestuften Benutzers:
g-gBlond, Jamesg007gSCSpezialitätNCNameKCKennungTC
Agenten
Probleme:
„geheimer“ Benutzer fügt Tupel mit Schlüssel „008“ ein
„geheimer“ Benutzer modifiziert Spezialität von „007“
![Page 20: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/20.jpg)
Multilevel-Relationen
Multilevel-Relation R mit Schema
R = {A1, C1, A2, C2, . . ., An, Cn, TC}
Relationeninstanzen RC mit Tupeln
[a1, c1, a2, c2, . . . , an, cn, tc]
c ≥ ci
ai ist sichtbar, wenn class (s) ≥ ci
![Page 21: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/21.jpg)
IntegritätsbedingungenSei κ sichtbarer Schlüssel der Multilevel-Relation R
Entity-Integrität. R erfüllt die Entity-Integrität genau dann, wenn für alle Instanzen Rc und r ∈ Rc die folgende Bedingungen gelten:
1. Ai ∈ κ ⇒ r.Ai ≠ Null2. Ai, Aj ∈ κ ⇒ r.Ci = r.Cj3. Ai ∉ κ ⇒ r.Ci ≥ r.Cκ (wobei Cκ die Zugriffsklasse des
Schlüssels ist)
![Page 22: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/22.jpg)
IntegritätsbedingungenSei κ sichtbarer Schlüssel der Multilevel-Relation R
Null-Integrität. R erfüllt die Null-Integrität genau dann, wenn für jede Instanz Rc von R gilt:
1. ∀r ∈ Rc, r.Ai = Null ⇒ r.Ci = r.Cκ
2. Rc ist subsumierungsfrei, d.h. es existieren keine zwei Tupel r und s, bei denen für alle Attribute Ai entweder
r.Ai = s.Ai und r.Ci = s.Ci oderr.Ai ≠ Null und s.Ai = Null gilt.
![Page 23: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/23.jpg)
Subsumtionsfreiheit von Relationena) Rsg
g-gBlond, Jamesg007gSCSpezialitätNCNameKCKennungTC
Agenten
a) Änderung von Rsg
sgmeuchelngBlond, Jamesg007sgSCSpezialitätNCNameKCKennungTC
Agenten
a) Fehlende Subsumtionsfreiheit
sgmeuchelngBlond, Jamesg007sgg-gBlond, Jamesg007gSCSpezialitätNCNameKCKennungTC
Agenten
![Page 24: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/24.jpg)
IntegritätsbedingungenInterinstanz-Integrität. R erfüllt die Interinstanz-Integrität genau dann, wenn für alle Instanzen Rc und Rc‘ von Rmit c‘ < c
Rc‘ = f(Rc, c‘)gilt. Die Filterfunktion f arbeitet wie folgt:
1. Für jedes r ∈ Rc mit r.Cκ ≤ c‘ muss ein Tupel s ∈ Rc‘existieren, mit
⎩⎨⎧ ≤
=
⎩⎨⎧ ≤
=
sonst .'. wenn .
.
sonst Null'. wenn .
.
k
iii
iii
CrcCrCr
Cs
cCrArAs
1. Rc‘ enthält außer diesen keine weiteren Tupel.
2. Subsumierte Tupel werden eliminiert.
![Page 25: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/25.jpg)
IntegritätsbedingungenPolyinstanziierungsintegrität. R erfüllt die Polyinstanziierungsintegrität genau dann, wenn für jede Instanz Rc für alle ai die folgende funktionale Abhängigkeit gilt:
{κ, Cκ, Ci} → Ai.
![Page 26: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/26.jpg)
KryptographieGerade die Gefahr des Abhörens von Kommunikationskanälen ist in heutigen Datenbankarchitekturen und Anwendungen sehr groß.
Die meisten Datenbankanwendungen werden in einer verteilten Umgebung betrieben – sei es als Client / Server-System oder als „echte“ verteilte Datenbank.
In beiden Fällen ist die Gefahr des unlegitimierten Abhörens sowohl innerhalb eines LAN (local area network, z.B. Ethernet) als auch im WAN (wide area network, z.B. Internet) gegeben und kann technisch fast nicht ausgeschlossen werden.
Deshalb kann nur die Verschlüsselung der gesendeten Information einen effektiven Datenschutz gewährleisten.
![Page 27: Sicherheit im DBMS - Uni Koblenz-Landaustaab/lehre/ws0405/db1/Kapitel12… · Sicherheitsaspekte Identifikation und Authentisierung Autorisierung und Zugriffskontrolle Auditing Sicherheit](https://reader033.vdokument.com/reader033/viewer/2022050213/5f5f8b0a55e2224c0b04115f/html5/thumbnails/27.jpg)
Ebenen des Datenschutzeslegislative Maßnahmen
organisatorische Maßnahmen
Authentisierung
Zugriffskontrolle
Kryptographie
Datenbank