Права доступу до файлів в Unix-системах.

Розрахована на багато користувачів система UNIX підтримує механізм, відомий, як система прав доступу до файлів. Цей механізм дозволяє вказати для кожного файлу власника і забезпечити захист файлів від доступу інших користувачів. UNIX дозволяє також спільно використовувати файли декільком користувачам і групам користувачів. У більшості систем, за замовчуванням, іншим користувачам дозволяється читати ваші файли, але забороняється вносити зміни у файли або видаляти їх. Отже, кожен файл має конкретного власника, але, крім того файлами, також можуть володіти конкретні групи користувачів, які визначаються при реєстрації користувачів у системі. Кожен користувач стає членом як мінімум однієї групи користувачів (своєї або який-то із загальних груп). Системний адміністратор (суперкористувач, зазвичай root) може забезпечити користувачеві доступ більш, ніж до однієї групи. Групи зазвичай визначаються типами користувачів цієї машини, наприклад, в університетському UNIX користувачі можуть бути розбиті на групи студент, викладач, керівництво, гість, або користувачі віртуального хостингу одного і того ж сервера можуть належати до групи www. Права доступу підрозділяються на три типи: читання (read), запис (write) і виконання (execute). Ці типи прав доступу можуть бути надані трьом класам користувачів: власнику файлу, групі, в яку входить власник, і всім іншим користувачам цієї машини. Дозвіл на читання (read) дозволяє користувачеві читати вміст файлів, а у разі каталогів - переглядати перелік імен файлів у каталозі. Дозвіл на запис дозволяє користувачеві писати в файл і змінювати його.Для каталогів це дає право створювати в каталозі нові файли і каталоги, або видаляти файли та каталоги у поточному каталозі. Нарешті дозвіл на виконання дозволяє користувачеві виконувати файли (як бінарні програми, так і командні файли). Дозвіл на виконання стосовно до каталогів дозволяє пользовотелю увійти до каталогу або, по іншому кажучи, змінити значення змінної оточення $ PWD командної оболонки на значення, відповідне місцю розташування цього каталогу від кореня файлової системи UNIX (повний шлях). При цьому, якщо біт читання (read) для даного каталогу не встановлений, то користувач зможе тільки увійти до каталогу, але не зможе прочитати імена файлів, що містяться в цьому каталозі - для користувача каталог буде порожній. Невеликий приклад, що демонструє роботу з правами доступу. Використовуючи команду ls з опціями-al можна отримати на екрані перелік всіх файлів даного каталогу (навіть прихованих) у "довгому" форматі, що включає й інформацію про права доступу.

drwx --- --- user user Вересні 1912 19:11 . /
drwx --- --- user user 7 червня 1:14 .. /
-Rw-r - r - user user 25 лютого 2003 data-type0.5.4.txt
-Rw-r - r - user user 6 липня 16:43 data-type0.5.4.txt.html
drwx --- --- user user Березень 1914 18:17 test /
drwx rx rx user user 6 березня 2003 todo /

Сім полів, зліва направо, позначають буквально наступне: атрибути об'єкта, кількість посилань на об'єкт, ім'я власника, група до якої належить власник, розмір об'єкта, дата і час останньої модифікації, ім'я об'єкта. Перше поле - поле атрибутів. Воно складається з 10 полів, разділених на 4 секції:

1. У першій секції, яка складається з одного поля, перебуває або - (прочерк), або d. Наявність букви d говорить про те, що даний об'єкт є директорією.Прочерк позначає, що об'єкт - звичайний файл.

2. Друга секція, як і всі наступні, складається з 3-х полів ... Вона визначає права доступу для власника (u) об'єкта до цього об'єкта. Перше поле означає право на читання (r), тобто на відкриття та читання вмісту цього файлу; або перегляд вмісту директорії, якщо це директорія. Друге поле визначає право на запис (w), тобто на модифікацію, видалення цього файлу; або, якщо це директорія, на створення і видалення в ній файлів і директорій; третє поле - право на виконання (x), тобто система буде вважати, що цей файл - програма або скрипт, коли ж це директорія - то наявність даного атрибуту дозволить у неї "зайти".

3. Третя секція, аналогічна першій, але визначає права для групи (g), яка встановлена для цього об'єкту.

4. Четверта секція, аналогічна першій, але визначає права для всіх інших (o)користувачів системи.

Крім того, система прав доступу має також і числове подання. Права представляють із себе число вигляду XYZ, що складається з цифр X, Y і Z, що визначають права для власника (X), групи (Y) і інших (Z), відповідно.Складається X, Y або Z за однаковими правилами: праву на читання відповідає цифра 4, праву на запис - 2, праву на виконання - 1. Якщо ви дозволяєте якісь з цих прав просто сумміруете, відповідні ним цифри. Таким чином, якщо ваш файл має право читати, змінювати і запускати тільки власник, то, відповідні значення для числового представлення обчислюються наступним чином: X = 4 +2 +1 = 7, Y = 0 +0 +0 = 0, Z = 0 +0 +0 = 0. Тепер давайте звернемося до питання про те, як же змінювати права доступу. Тут все залежить від способу вашого доступу до системи. Якщо ви маєте unix shell, то ви можете скористатися командою chmod (change mode) приблизно так chmod 0644 file.txt або навіть так chmod og-x file.txt Для одержання більш докладної інформації про команду chmod зверніться до сторінки довідкового керівництва - man chmod. Якщо ж ви маєте доступ до системи по протоколу FTP (наприклад, доступ до вашого сайту), то і тут ви зможете працювати з правами доступу, якщо це "дозволяє" сервер. Сучасні клієнти FTP, як для Windows, так і для Unix, надають таку можливість. Причому найчастіше, ви маєте можливість працювати як з буквеним, так і числовим представленням прав доступу, як вам зручніше. Можна встановлювати права доступу як заманеться, але треба пам'ятати, що небажано давати право на запис у своїй директорії та файли всім іншим (other) користувачам системи, і в деяких випадках, користувачам, які входять до своєї групи. Можна взагалі заборонити будь-які дії зі своїми файлами і директоріями для користувачів із своєї групи і всіх інших користувачів, встановивши права для директорій drwx --- --- і для невиконуваних файлів-rw---- ---.

 








Дата добавления: 2015-07-24; просмотров: 838;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.