Closed YuriZalukovskiy closed 1 year ago
Зараз побачив, що у презентації, на 7-му слайді була помилка із визначення трудомісткості RBAC. Зараз це виправив. На передостанньому слайді вирази були вже правильними. Повторіть, будь ласка розрахунки для RBAC, бо висновки можуть змінитися. Дякую.
Виправив.
Дякую. Оцінка = 7 балів
Варіант №7 Запитання №1 В презентації, наданої за посиланням https://drive.google.com/file/d/19_SE61Vp0iCTwF-3DPe00iTbT3JbcIqO, розглянуто вирази загальної оцінки трудомісткості операцій керування доступом для DAC, RBAC та MAC-моделей. Припустимо, що вам необхідно забезпечити доступ до БД, враховуючи, що:
Трудомісткість DAC = |S| |O| = 28 21 = 588 Трудомісткість RBAC = |S| |R| + |R| |O| = 28 14 + 14 21 = 686 Трудомісткість MAC = |S| + |O| = 28 + 21 = 49 Перехід від DAC моделі до моделі RBAC збільшує трудомісткість майже в 1.2 рази, що робить цей перехід недоцільним. Перехід від RBAC моделі до MAC моделі зменшує трудомісткість в 14 разів, що робить цей перехід доцільним.
Трудомісткість DAC = |S| |O| = 56 21 = 1176 Трудомісткість RBAC = |S| |R| + |R| |O| = 56 7 + 7 21 = 539 Трудомісткість MAC = |S| + |O| = 56 + 21 = 77 Перехід від DAC моделі до моделі RBAC зменшує трудомісткість майже в 2.2 рази, що робить цей перехід доцільним. Перехід від RBAC моделі до MAC моделі зменшує трудомісткість в 7 разів, що робить цей перехід доцільним.
Зі збільшенням кількості користувачів трудомісткість DAC моделі значно збільшилася, що ускладнює керування. Зі зменшенням кількості ролей трудомісткість RBAC моделі зменшилася, що полегшує управління. Зі збільшенням кількості користувачів трудомісткість MAC моделі збільшилася, що ускладнює керування.
Запитання №2 Припустимо, що програмне забезпечення, яке ви розглядами в лабораторній роботі №1, містить БД, або множину файлів електронних документів, до яких користувачі повинні отримувати доступ. Враховуючи вищесказане, виконайте наступні завдання: 1) наведіть приклади:
CREATE TABLE user_access_level ( user_name VARCHAR PRIMARY KEY, access_level INTEGER REFERENCES access_levels (id) );
CREATE TABLE trip ( id INTEGER PRIMARY KEY, name VARCHAR, start_date DATE, end_date DATE, budget DOUBLE PRECISION, user VARCHAR, spot_conf INTEGER DEFAULT 3 REFERENCES access_levels (id) );
CREATE TABLE plan ( id INTEGER PRIMARY KEY, name VARCHAR, date TIMESTAMP, is_completed BOOLEAN, trip_id INTEGER REFERENCES trip (id), spot_conf INTEGER DEFAULT 3 REFERENCES access_levels (id) );
CREATE TABLE spending ( id INTEGER PRIMARY KEY, name VARCHAR, date TIMESTAMP, category VARCHAR, amount DOUBLE PRECISION, trip_id INTEGER REFERENCES trip (id), spot_conf INTEGER DEFAULT 3 REFERENCES access_levels (id) );