TDDD17 Informatjon Security
(VT 2019)
Topic: Database Security
Olaf Hartjg
- laf.hartjg@liu.se
Acknowledgement: Several of the slides in this slide set are adaptations from slides made available for the database textbook by Elmasri and Navathe.
TDDD17 Informatjon Security (VT 2019) Topic: Database Security - - PowerPoint PPT Presentation
TDDD17 Informatjon Security (VT 2019) Topic: Database Security Olaf Hartjg olaf.hartjg@liu.se Acknowledgement: Several of the slides in this slide set are adaptations from slides made available for the database textbook by Elmasri and
Acknowledgement: Several of the slides in this slide set are adaptations from slides made available for the database textbook by Elmasri and Navathe.
2 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– Built for a specific purpose – Represents some aspects of the real world
– Protects DB against unauthorized access and manipulation – Examples of DBMSs: IBM’s DB2, Microsoft’s SQL Server,
3 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– INSERT, UPDATE, DELETE
– SELECT
4 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– Relation names, attribute names, attribute domains (types) – Integrity constraints
Example from “Fundamentals of Database Systems” by Elmasri and Navathe, Addison Wesley.
6 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– e.g., student learns other students' grades
– e.g., students changing their grades
– e.g., students are denied seeing their own grades – “denial of service attack”
7 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– Limiting access to the database (or parts thereof) – Requires authentication (e.g., through login and password) – Usually with auditing (i.e., logging DB operations by each user)
– Preventing deductions about database content – Summary data without ability to determine individuals’ data
– Preventing information from reaching unauthorized users
– Protecting sensitive data (e.g., when transmitted over network) – Making information unintelligible unless authorized – Making changes traceable to source
9 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– Discretionary access control – Mandatory access control
11 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– i.e., who may grant / revoke – Centralized administration: only some privileged users – Ownership-based administration: creator of the object
12 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– to allow user Alice to query the table called Student
– to allow Alice to delete from the Student table
– revoke the previous privilege
– to allow Alice to modify any value in Employee
– to allow Bob to modify Salary values in Employee
13 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– SELECT – INSERT (may be restricted to specific attributes) – UPDATE (may be restricted to specific attributes) – DELETE – REFERENCES (may be restricted to specific attributes)
– Tables – Views – Specific attributes (for INSERT, UPDATE, REFERENCES)
14 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
15 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– When a privilege is revoked from user X, it is also revoked
16 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
18 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– Objects: tables, views, attributes – SQL does not support tuple-specific privileges
– CREATE / ALTER / DROP tables or views – Creator of an object gets all (object-level) permissions
– Not supported by standard SQL but by DBMS-specific
19 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
21 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– e.g., TopSecrect > Secret > Confidential > Unclassified
22 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– e.g., reading secret data requires at least secret clearance – Goal: protect classified data
– e.g., person with confidential clearance cannot write
– Goal: flow control (information never flows
23 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
24 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– Value of this attribute in a tuple is the highest of
Example from “Fundamentals of Database Systems” by Elmasri and Navathe, Addison Wesley.
25 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– For a user with Confidential clearance:
Example from “Fundamentals of Database Systems” by Elmasri and Navathe, Addison Wesley.
28 TDDD17 Informatjon Security Topic: Database Security Olaf Hartjg, 2019
– Secrecy (confidentiality) – Integrity – Availability
– based on notion of privileges – GRANT and REVOKE – susceptible to trojan horse attack
– based on notion of security classes – not widely supported