Модель Take-Grant
Ця стаття не містить посилань на джерела. (травень 2018) |
Модель Take-Grant (від англ. take «брати», grant «давати») — це формальна модель, використовувана в області комп'ютерної безпеки, для аналізу систем дискретного розмежування доступу; підтверджує або спростовує ступені захищеності даної автоматизованої системи, яка повинна задовольняти регламентованим вимогам. Модель представляє всю систему як орієнтований граф, де вузли — які-небудь об'єкти або суб'єкти. Дуги між ними позначені, і їх значення вказують права, які має об'єкт або суб'єкт (вузол). У моделі домінують два правила: «брати» і «давати». Вони відіграють в ній особливу роль, переписуючи правила, що описують допустимі шляхи зміни графа. В цілому існує 4 правила перетворення:
- правило «брати»;
- правило «давати»;
- правило «створити»;
- правило «видалити»;
Використовуючи ці правила, можна відтворити стан, в яких перебуватиме система залежно від розподілу і зміни прав доступу. Отже, можна проаналізувати можливі загрози для даної системи.
Звичайна модель[ред. | ред. код]
O — множина об'єктів (файли, сегменти пам'яті і т. д.)
S — множина суб'єктів (користувачі, процеси системи)
R = {r1, r2, r3, r4, …, rn) } U {t, g} — множина прав доступу
t [take] — право брати «права доступу»
g [grant] — право давати «права доступу»
G = (S, O, E) — скінченний, позначений, орієнтований граф без петель
× — об'єкти, елементи множини О
• — суб'єкти, елементи множини S
E ∈ O x O x R дуги графа. Стан системи описується її графом.
Перетворення G в граф G' = правило і позначається:
[G\ - op G']
Правило «брати»[ред. | ред. код]
Брати = take(r, x, y, s), r ∈ R
Нехай s ∈ S, x,y ∈ O — вершини графа G
Тоді граф G:
Тобто суб'єкт S бере у об'єкта X r права на об'єкт Y.
Правило «давати»[ред. | ред. код]
Давати = grant(r, x, y, s), r ∈ R
Нехай s ∈ S, x,y ∈ O — вершини графа G
Тоді граф G:
Тобто суб'єкт S дає об'єкту X r права на об'єкт Y.
Правило «створити»[ред. | ред. код]
Створити = create(r, x, s), r ∈ R
Нехай s ∈ S, x,y ∈ O — вершини графа G
Тоді граф G:
Тобто суб'єкт S бере r-доступний об'єкт X.
Правило «видалити»[ред. | ред. код]
Видалити = remove(r, x, s), r ∈ R
Нехай s ∈ S, x,y ∈ O — вершини графа G
Тоді граф G:
Приклади реалізації[ред. | ред. код]
1. На малюнку нижче показано графічне представлення структури каталогів. У цьому графі Р1 і Р2 є суб'єктами (можливі користувачі), а Ds і Fs представляють об'єкти, каталоги і файли, відповідно. Право «читання» було змінено на правило «брати» для всіх рівнів, за винятком фактично файлових рівнів в каталогах. Право «запису» також змінилося правилом «давати». Стає ясно з цього графа: якщо суб'єкт має право читання(брати) об'єкта, то він може мати право на читання будь-яких інших об'єктів, на які цей перший об'єкт має якісь права. Аналогічно, якщо суб'єкт має право запису (давати) об'єкта, він може надати будь-яке з своїх прав на цей об'єкт.
2. На малюнку нижче показано, що за допомогою комбінації із зазначених вище чотирьох правил, новий файл може бути доданий в каталог структури Прикладу 1. І права на читання/запис, будуть призначені згідно з правилами використання каталогу, в якій цей файл записується. Наступні чотири кроки необхідні для додавання файлу і дозволу:
- P1 створює R/W для нового об'єкта F7
- P1 прийняти t D1 від D
- P1 прийняти g для D11 з D1
- P1 дарувати RW від F7 до D11
Номери у списку вище, відповідають обведеним номерами зображеним на графіку, як створюється дуга графа.
На цю статтю не посилаються інші статті Вікіпедії. Будь ласка, скористайтеся підказкою та розставте посилання відповідно до прийнятих рекомендацій. |