Копіювання та відновлення інформації

Керування доступом в залежності від класів користувачів

Матриця керування доступом

Один з можливих способів керування доступом до файлів полягає в тому, щоб створити двомірну матрицю керування доступом, в якій показані всі файли системи.

 

  Файл
Користувач  
                 
                     
                     
                     
                     

 

Елемент Ai j приймає значення 1, якщо користувачу і дозволяється доступ до файлу j; в протилежному випадку Ai j = 0.

У системі з великою кількістю користувачів та файлів ця матриця може виявитись дуже великою і при тому дуже розрідженою. Надання одному користувачу права доступу до файлів другого користувача це скоріше виняток, ніж правило.

Щоб така матриця керування доступом була корисна для реальних систем, доцільно використовувати спеціальні коди для різних прав доступу, таких як:

“тільки для читання”;

“тільки для записів”;

“тільки для виконання”;

“для читання – записів”,

і т.п.

Матриця може бути такою великою, що реалізувати її практично неможливо. Існує спосіб, що вимагає значно менше місця в пам’яті системи – це керування доступом до файлів в залежності від класів користувачів. Звичайна класифікація передбачає такі категорії:

“Власник” – це користувач, який створив даний файл;

“Вказаний, допущений користувач” - власник файлу вказує, що з його файлом може працювати інша людина;

“Група” або “Проект”. Користувачі часто є членами групи, що разом працюють над конкретним проектом. В такому випадку всім членам такої групи надається доступ до певних файлів.

“Загальнодоступний” - доступ дозволяється для якого завгодно користувача даної системи. Поняття “загальнодоступний” означає, що користувачам дозволяється читати або використовувати файл, а робити записи в ньому забороняється.

ОС взагалі та файлові системи зокрема повинні розроблятися з врахуванням можливості руйнування інформації.

Найбільш розповсюджений спосіб – періодичне копіювання. Але це не виключає можливості втратити всіх змін у файлі з моменту його останнього копіювання.

Ще один спосіб – реєстрація, протоколювання всіх змін у файлі. Така надлишковість може бути досить дорогою, але дозволяє реконструювати всю роботу. При умові, звичайно, що диск реєстрування (журнальний) не виявився також зіпсованим.

Не існує ніяких засобів, що гарантують абсолютну безпечність файлів.

Схема періодичного копіювання має декілька недоліків:

- на час копіювання може виникнути необхідність закрити систему для звичайних користувачів;

- розміри файлових систем можуть бути дуже великі і дублювання може вимагати багато машинного часу;

- відновити інформацію можна тільки до стану останньої копії.

Перевага періодичного копіювання – дозволяє реорганізувати файлову систему таким чином, щоб блоки файлів користувачів, що розкинуті по дисковій пам’яті, можна розмістити більш компактно, поруч один з одним. Це звичайно, дає можливість більш швидкого доступу до файлів користувачів.

Періодичне копіювання не влаштовує, якщо відновлення треба робити швидко, за останнім станом системи. Для цього є ефективніший спосіб – „інкрементний”, або покроковий „дампінг”. Всі файли, вміст яких обновлюється під час роботи з терміналом, починаються спеціальними ознаками. Коли користувач відключається від системи, список усіх цих файлів, передається певному системному процесу, який виконує їх копіювання. Недолік – він не допоможе, коли в момент збою користувач знаходиться ближче до кінця довготривалого сеансу роботи з терміналом.

Для систем, в яких втрата результатів навіть мінімальної кількості робіт є недопустимою, більш підходить спосіб протоколювання (занесення в журнал) звертань. Тут кожна зміна дублюється в той же час, коли вона відбулася. Таку інтенсивність дублювання легше забезпечити для інтерактивних систем, де загальний об’єм робіт обмежується відносно низькими швидкостями відповіді людини.