Course detail
Security of Database Systems
FEKT-BPC-BDSAcad. year: 2023/2024
The course covers topics related to database systems and their security. It covers the design and implementation of database systems, with respect to the efficiency of processing large volumes of data, virtualization, security principles , security settings, and the mitigation possibilities against common security attacks.
Language of instruction
Number of ECTS credits
Mode of study
Guarantor
Department
Entry knowledge
Rules for evaluation and completion of the course
The conditions for the successful course completion are stated in the yearly updated supervisor’s notice.
Aims
The student will acquire the necessary theoretical and practical skills in the design and implementation of database systems including their security. The student will learn basic principles of design and implementation of database systems, to implement this practically with regard to the security of such a system.
After course completion, the students will be able to:
- explain and practically implement the design of a database application,
- practically realize the implementation of a database system,
- process data in a database using a programming language,
- select the appropriate type of database for different types of applications,
- explain and practically implement transactional data processing,
- optimize database queries to reduce the load on database systems,
- configure the database with respect to its security,
- deploy a database in a virtualized environment,
Study aids
Prerequisites and corequisites
Basic literature
NATAN, Ben. Implementing Database Security and Auditing. Digital Press, 2005. xv, 432 s. ISBN 978-1555583347. (EN)
SILBERSCHATZ, Abraham, Henry F. KORTH a S. SUDARSHAN. Database system concepts. 7th ed. Boston: McGraw-Hill Education, 2019. xxvi, 1142. ISBN 1260084507. (EN)
Recommended reading
Elearning
Classification of course in study plans
- Programme BPC-IBE Bachelor's 2 year of study, winter semester, compulsory
Type of course unit
Lecture
Teacher / Lecturer
Syllabus
1. Úvod do databázových systémů, základní pojmy.
2. Entitně relační model, základy návrhu databázového systému.
3. Pokročilejší návrh databázového systému, normální formy.
4. Relační algebra, základy dotazovacího jazyku SQL.
5. Středné pokročilé dotazování v SQL.
6. Pokročilé SQL: pohledy, materializované pohledy, procedury a indexování dat.
7. Zabezpečení databázových systémů.
8. Bezpečné zpracování a ukládání dat prostřednictvím programovacího jazyka.
9. Transakce a jejich zpracování, zálohování.
10. Virtualizace a Cloudy - škálování a zvyšování spolehlivosti softwarových řešení.
11. NoSQL databáze, loggovací architektury a jejich význam v kyberbezpečnosti.
12. Zabezpečení databází, shrnutí.
Exercise in computer lab
Teacher / Lecturer
Syllabus
1. Úvodní cvičení.
2. Návrh základních databázových schémat.
3. Implementace základních databázových schémat, DML, DDL. Zadání prvního projektu.
4. Relační algebra a základy dotazování v SQL.
5. Pokročilejší dotazování v SQL.
6. Pokročilé dotazování v SQL. Vyhodnocení prvního projektu.
7. Běžné způsoby zabezpečení databázových systémů a zpracování hesel. Zadání druhého projektu.
8. Zpracování dat prostřednictvím programovacího jazyka Java.
9. JavaFX a implementace uživatelské aplikace v Javě, základy implementace transakcí. Vyhodnocení druhého projektu/Zadání třetího projektu.
10. Implementace základních Docker souborů a práce s nimi. Zadání třetího projektu.
11. Logovací architektura ELK.
12. Konzultace probírané látky a projektů. Vyhodnocení třetího projektu.
Elearning