Какая привилегия ос windows позволяет читать любой файл вне зависимости от заданных прав

Иногда при работе с файлами можно увидеть такое сообщение — «Отсутствует доступ к файлу». Сам файл есть, он на вашем компьютере, вы его главный и единственный пользователь, но почему-то вам не дают распоряжаться файлами. В чём дело? 

А дело в том, что в операционной системе есть две важные сущности, которые отвечают за этот процесс: 

  • Пользователи — о них мы говорили недавно.
  • Права доступа — об этом поговорим сейчас.
Что такое права доступа и на что они влияют

Windows не даёт вам получить доступ к файлу на вашем же собственном жёстком диске

При чём тут операционная система

Когда вы хотите что-то сделать с файлом на компьютере, это действие происходит не напрямую: оно проходит через операционную систему. Копирование, переименование, чтение файла — всё через операционку. 

Когда операционка получает задачу, например переименовать файл, она может броситься делать это сразу; а может провести какие-то дополнительные проверки — например, существует ли этот файл и нет ли в новом названии запрещённых символов или служебных обозначений. Это делается для безопасности работы компьютера, чтобы он ненароком не сломал сам себя. 

Среди проверок может быть и проверка прав доступа. 

Что такое права доступа

Так вот, у каждого пользователя в системе есть свои права: они определяют, что может делать этот пользователь, а что нет. Что они включают в себя: 

  • Какие файлы и папки пользователь может прочитать.
  • В какие файлы и папки он может записать данные.
  • Какие программы может запустить, какие инструкции исполнить.

Если операционная система видит, что пользователь хочет сделать что-то за пределами своих прав, она должна его остановить. 

Вам может быть интересно:

Какие ещё есть пользователи на компьютере кроме нас

Даже если вы работаете за компьютером в гордом одиночестве, параллельно с вами работают системные службы и сервисы. Обычно у каждой это службы есть либо свой «системный пользователь», либо они объединены в едином пользователе «система»: 

  • менеджер печати, который отвечает за печать на принтере;
  • система работы сети — она следит за всеми сетями и организует доступ к ним для всех приложений;
  • системные процессы, которые занимаются техническими задачами — файловой системой, драйверами и приложениями.

Если в Windows открыть диспетчер задач, вы заметите этих скрытых пользователей и службы:

Что такое права доступа и на что они влияют

Диспетчер задач в Windows: некоторые процессы принадлежат системе, другие — сетевым службам, третьи — местным службам
Что такое права доступа и на что они влияют

Мониторинг системы в MacOS. Пользователь root — это корень системы, а есть ещё дополнительные пользователи-службы. Самого пользователя зовут mike, и ему принадлежит малая часть процессов

Почему права доступа разные и зачем это нужно

Основная задача разделения прав доступа — чтобы один пользователь не мог помешать работе другого пользователя и системы в целом. 

Например, в Windows есть пользователь SYSTEM (Система) или Администратор, а в MacOS и Linux — root. Они отвечают за самые важные параметры и настройки компьютера, поэтому у них самый высокий уровень доступа — они могут делать с любыми файлами что угодно. При этом им могут принадлежать какие-то свои файлы и папки, к которым доступ может быть запрещён для других пользователей.

У других служебных пользователей уровень доступа другой — они могут распоряжаться только своими файлами, но запретить к ним доступ другим пользователям они тоже могут. 

А обычному пользователю можно работать только со своими файлами и с теми, к которым разрешили доступ другие пользователи. Поэтому мы можем просматривать разные системные файлы, но удалить что-то действительно важное нам не позволят права доступа.

Чтение, запись и исполнение

Чаще всего в файловых системах используются три категории доступа — на чтение, запись и исполнение. Они могут применяться одновременно или по отдельности для разных категорий пользователей. 

Например, одному файлу можно назначить права «Все могут читать, но писать и запускать может только администратор». А какой-нибудь папке общего доступа можно сказать «В тебя могут писать файлы все, читать тоже все».

Как поменять права доступа

В MacOS и Linux права доступа меняются двумя командами: 

chown меняет владельца и группу

chmod управляет разрешениями файла

Подробнее про эти команды поговорим в статье про скрипты в операционных системах.

В Windows права доступа меняются сложнее — нужно щёлкнуть правой кнопкой мыши по файлу, выбрать вкладку «Безопасность», в ней нажать кнопку «Изменить» и в новом окне добавить пользователей или настроить права для тех, кто есть в списке:

Что такое права доступа и на что они влияют

Как заполучить безграничную власть

Чтобы получить системные права на всё, нужно зайти в неё, имея права суперпользователя или администратора. В Linux это можно сделать двумя способами: 

  1. Залогиниться в «Терминал» под именем и с паролем суперпользователя.
  2. Перед исполнением опасной команды использовать команду sudo. Она позволяет выполнить следующую за ней команду от имени администратора системы root. 

Например, если в Ubuntu набрать в терминале команду sudo rm -rf --no-preserve-root, она сначала спросит пароль администратора системы, а потом начнёт удалять все файлы и папки в текущей папке. Если вы предварительно оказались в корневой папке своей системы, то эта команда молча сотрёт всё, что было на диске, в том числе системные файлы. Системное ядро запаникует, консоль зависнет, и ваш компьютер превратится в тыкву. Это настоящая команда саморазрушения. Пруф:

Что такое права доступа и на что они влияют

Самоуничтожение компьютера одной командой (хоть и не с первого раза)

Что дальше

Кроме файлов с разными правами доступа, на компьютере можно найти скрытые папки. Зачем они нужны и почему они скрытые — об этом поговорим в следующей статье.

Художник:

Даня Берковский

Вёрстка:

Кирилл Климентьев

Права доступа

Основы командной строки

Часто разработчики сталкиваются с ошибкой доступа:

touch /etc/myfile

touch: cannot touch '/etc/myfile': Permission denied

Она указывает, что текущий пользователь не имеет прав на создание файлов в каталоге /etc. Почему? Все дело в правах доступа, которые мы изучим в этом уроке.

Кроме имени пользователя и группы, с каждым файлом ассоциированы права доступа:

  • r — чтение (read)
  • w — запись (write)
  • x — исполнение (execute)

Причем эти права задаются для трех типов пользователей:

  • Владельца (User)
  • Пользователей, входящих в ту же группу (Group)
  • Остальных (Other) — тех, кто не попал в предыдущие две

Разберем на примере:

# Пример строчки из вывода команды ls -la
-rw-r--r-- 1 kirill.m kirill.m 3771 Aug 31  2015 .profile

Запись слева представляет собой один из вариантов описания прав доступа (permissions). Для удобства чтения разделим эту запись на группы символов:

  • - — этот символ обозначает, что перед нами файл
  • rw- — права первого типа (для владельца файла). Владелец может читать этот файл (r) и писать в него (w). Прочерк в конце означает, что этот файл нельзя исполнять
  • r-- — права второго типа (для группы владельца). В нашем случае такие права есть у тех, кто входит в группу kirill.m. Запись r-- говорит о наличии доступа только для чтения, а изменение и исполнение запрещены.
  • r-- — права третьей группы (все остальные). В нашем случае права совпадают со второй группой, поэтому файл доступен только для чтения

Не важно, какой файл или директорию мы смотрим — порядок прав в этой группе всегда один и тот же — чтение-запись-исполнение, а прочерк означает отсутствие этого права:

File Permissions

А кто может удалить этот файл? Для ответа на этот вопрос важно знать владельца, группу и права той директории, в которой лежит файл .profile. Сам файл не может обозначить прав на свое удаление, потому что права всегда берутся из той директории, в которой файл находится.

Удалить файл можно, только если у вас есть возможность писать в эту директорию:

ls -la /home/ | grep kirill

drwxr-xr-x  5 kirill.m          kirill.m          4096 Aug 29 11:34 kirill.m

Домашняя директория имеет другие права:

  • В самом начале вместо - стоит d, которая обозначает директорию
  • Права для владельца — rwx, а для всех остальных — r-x. Из этого описания видно, что только пользователь может писать внутрь своей домашней директории

Что такое x в отношении директорий? Это право позволяет перемещаться в директорию и обращаться ко всем расположенным в ней файлам и каталогам. Обращаться можно при условии, что эти файлы доступны на чтение, запись или выполнение. Например, если положить доступный на чтение файл в директорию с правом x, то вы сможете прочитать этот файл. Если убрать с этой директории право x, то вы лишитесь доступа к файлу.

Но что тогда такое чтение? Здесь все более интуитивно понятно. По сути, директория — это список файлов, поэтому право на чтение позволяет прочитать этот список, а именно вывести список имен файлов, содержащихся в директории.

Но представим, что вы хотите посмотреть не простой список имен файлов, а список с дополнительной информацией — как при выводе ls -l. Тогда потребуется еще и право x, потому что в этом случае надо обращаться к файлам за их метаданными (владелец, группа, дата изменения, права и др.). В любом случае без права r вы не сможете посмотреть содержимое директории.

В статьях, книгах и руководствах иногда используется другой способ описания прав доступа: 755. Это не одно число, а три числа. Каждое из которых представляет собой группу rwx для наших типов пользователя в том же порядке: для владельца, входящих в группу и всех остальных. Число 0 означает, что нет никаких прав для данного типа пользователей:

A B C D
# Permission rwx Binary
7 read, write and execute rwx 111
6 read and write rw- 110
5 read and execute r-x 101
4 read only r— 100
3 write and execute -wx 011
2 write only -w- 010
1 execute only —x 001

Попробуем перевести несколько примеров из буквенной формы в числовую:

  • drwxr-xr-x соответствует 755
  • -rw-r--r-- соответствует 644

Однако пользователь root находится вне этой системы. Для него не имеет никакого значения наличие любых прав — суперпользователь может все.

Для изменения владельца файлов или директорий можно использовать утилиту chown (от англ. change owner). В самом простом использовании команда принимает имя пользователя и файл (или директорию) для которого нужно сменить пользователя:

chown kirill .profile

Для изменения прав доступа к файлам и директориям можно использовать утилиту chmod (от англ. change mode). Утилита принимает права доступа и путь к файлу. Права доступа можно записывать обоими способами. С помощью знаков + и - права добавляются или удаляются соответственно:

chmod +r file.txt
chmod 754 file.txt

Дополнительные материалы

  1. Изменение владельца файла или каталога
  2. Изменение прав доступа

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно


  • 130 курсов, 2000+ часов теории

  • 1000 практических заданий в браузере

  • 360 000 студентов

Наши выпускники работают в компаниях:

Права доступа к файлам и папкам простым языком.

На просторах России много фирм и мелких предприятий не имеют в штате своего системного администратора на постоянной основе или приходящего время от времени. Фирма растёт и рано или поздно одной расшаренной папки в сети, где каждый может делать что захочет, становится мало. Требуется разграничение доступа для разных пользователей или групп пользователей на платформе MS Windows. Линуксоидов и опытных админов просьба не читать статью.

Самый лучший вариант — взять в штат опытного админа и задуматься о покупке сервера. Опытный админ на месте сам решит: поднимать ли MS Windows Server с Active Directory или использовать что-то из мира Linux.

Но данная статья написана для тех, кто решил пока мучаться самостоятельно, не применяя современные программные решения. Попытаюсь объяснить хотя бы как правильно реализовывать разграничение прав.

Прежде чем начать хотелось бы разжевать пару моментов:

  • Любая операционная система «узнаёт» и «различает» реальных людей через их учётные записи. Должно быть так: один человек = одна учётная запись.
  • В статье описывается ситуация, что в фирме нет своего админа и не куплен, к примеру, MS Windows Server. Любая обычная MS Windows одновременно обслуживает по сети не более 10 для WinXP и 20 человек для Win7. Это сделано фирмой Microsoft специально, чтобы клиентские Windows не перебегали дорогу серверам Windows и вы не портили бизнес Microsoft. Помните число 10-20 и когда в вашей фирме будет более 10-20 человек, вам придётся задуматься о покупке MS Windows Server или попросить кого-либо поднять вам бесплатный Linux Samba сервер, у которого нет таких ограничений.
  • Раз у вас нет грамотного админа, то ваш обычный комп с клиентской MS Windows будет изображать из себя файловый сервер. Вы вынуждены будете продублировать на нём учётные записи пользователей с других компьютеров, чтобы получать доступ к расшаренным файлам. Другими словами, если есть в фирме ПК1 бухгалтера Оли с учётной записью olya, то и на этом «сервере» (именую его в дальнейшем как WinServer) нужно создать учётную запись olya с таким же паролем, как и на ПК1.
  • Люди приходят и уходят. Текучесть кадров есть везде и если вы, тот бедный человек, который не админ и назначен (вынужден) поддерживать ИТ вопросы фирмы, то вот вам совет. Делайте учётные записи, не привязанные к личности. Создавайте для менеджеров — manager1, manager2. Для бухгалтеров — buh1, buh2. Или что-то подобное. Ушёл человек? Другой не обидится, если будет использовать manager1. Согласитесь это лучше, чем Семёну использовать учётную запись olya, так как влом или некому переделывать и уже всё работает 100 лет.
  • Забудьте такие слова как: «сделать пароль на папку». Те времена, когда на ресурсы накладывался пароль давным давно прошли. Поменялась философия работы с различными ресурсами. Сейчас пользователь входит в свою систему с помощью учётной записи (идентификация), подтверждая себя своим паролем (аутентификация) и ему предоставляется доступ ко всем разрешённым ресурсам. Один раз вошёл в систему и получил доступ ко всему — вот что нужно помнить.
  • Желательно выполнять нижеперечисленные действия от встроенной учётной записи Администратор или от первой учётной записи в системе, которая по умолчанию входит в группу Администраторы.

Приготовление.

В Проводнике уберите упрощённый доступ к нужным нам вещам.

  • MS Windows XP. Меню Сервис — Свойства папки — Вид. Снять галочку Использовать мастер общего доступа
  • MS Windows 7. Нажмите Alt. Меню Сервис — Параметры папок — Вид. Снять галочку Использовать простой общий доступ к файлам.

Создайте на вашем компьютере WinServer папку, которая будет хранить ваше богатство в виде файлов приказов, договоров и так далее. У меня, как пример, это будет C:\dostup\. Папка обязательна должна быть создана на разделе с NTFS.

Папка на диске с NTFS

Доступ по сети.

На данном этапе нужно выдать в доступ по сети (расшарить — share) папку для работы с ней другими пользователями на своих компьютерах данной локальной сети.

И самое главное! Выдать папку в доступ с полным разрешением для всех! Да да! Вы не ослышались. А как же разграничение доступа?

Разрешить доступ ВСЕм по сети

Мы разрешаем по локальной сети всем подсоединяться к папке, НО разграничивать доступ будем средствами безопасности, сохраняемые в файловой системе NTFS, на которой расположена наш каталог.

  • MS Windows XP. На нужной папке (C:\dostup\) правой клавишей мыши и там Свойства. Вкладка Доступ — Открыть общий доступ к этой папке. Заполняем Примечание. Жмём Разрешение. Группа Все должна иметь по сети право Полный доступ.
  • MS Windows 7. На нужной папке (C:\dostup\) правой клавишей мыши и там Свойства. Вкладка Доступ — Расширенная настройка. Ставим галочку Открыть общий доступ к этой папке. Заполняем Примечание. Жмём Разрешение. Группа Все должна иметь по сети право Полный доступ.

Пользователи и группы безопасности.

Нужно создать необходимые учётные записи пользователей. Напоминаю, что если на многочисленных ваших персональных компьютерах используются различные учётные записи для пользователей, то все они должны быть созданы на вашем «сервере» и с теми же самыми паролями. Этого можно избежать, только если у вас грамотный админ и компьютеры в Active Directory. Нет? Тогда кропотливо создавайте учётные записи.

Создание пользовательских учётных записей

  • MS Windows XP. Панель Управления — Администрирование — Управление компьютером.
    Локальные пользователи и группы — Пользователи. Меню Действие — Новый пользователь.
  • MS Windows 7. Панель Управления — Администрирование — Управление компьютером.
    Локальные пользователи и группы — Пользователи. Меню Действие — Создать пользователя.

Теперь очередь за самым главным — группы! Группы позволяют включать в себя учётные записи пользователей и упрощают манипуляции с выдачей прав и разграничением доступа.

Чуть ниже будет объяснено «наложение прав» на каталоги и файлы, но сейчас главное понять одну мысль. Права на папки или файлы будут предоставляться группам, которые образно можно сравнить с контейнерами. А группы уже «передадут» права включённым в них учётным записям. То есть нужно мыслить на уровне групп, а не на уровне отдельных учётных записей.

  • MS Windows XP. Панель Управления — Администрирование — Управление компьютером.
    Локальные пользователи и группы — Группы. Меню Действие — Создать группу.
  • MS Windows 7. Панель Управления — Администрирование — Управление компьютером.
    Локальные пользователи и группы — Группы. Меню Действие — Создать группу.
Создание групп

Нужно включить в нужные группы нужные учётные записи. Для примера, на группе Бухгалтеры правой клавишей мыши и там Добавить в группу или Свойства и там кнопка Добавить. В поле Введите имена выбираемых объектов впишите имя необходимой учётной записи и нажмите Проверить имена. Если всё верно, то учётная запись изменится к виду ИМЯСЕРВЕРА\учётная_запись. На рисунке выше, учётная запись buh3 была приведена к WINSERVER\buh3.

Итак, нужные группы созданы и учётные записи пользователей включены в нужные группы. Но до этапа назначения прав на папках и файлах с помощью групп хотелось бы обсудить пару моментов.

Стоит ли заморачиваться с группой, если в ней будет одна учётная запись? Считаю, что стоит! Группа даёт гибкость и маневренность. Завтра вам понадобится ещё одному человеку Б дать те же права, что и определённому человеку с его учётной записью А. Вы просто добавите учётную запись Б в группу, где уже имеется А и всё!

Намного проще, когда права доступа выданы группам, а не отдельным персонам. Вам остаётся лишь манипулировать группами и включением в них нужных учётных записей.

Права доступа.

Желательно выполнять нижеперечисленные действия от встроенной учётной записи Администратор или от первой учётной записи в системе, которая по умолчанию входит в группу Администраторы.

Вот и добрались до этапа, где непосредственно и происходит магия разграничения прав доступа для различных групп, а через них и пользователям (точнее их учётным записям).

Итак, у нас есть директория по адресу C:\dostup\, которую мы уже выдали в доступ по сети всем сотрудникам. Внутри каталога C:\dostup\ ради примера создадим папки Договора, Приказы, Учёт МЦ. Предположим, что есть задача сделать:

  • папка Договора должна быть доступна для Бухгалтеров только на чтение. Чтение и запись для группы Менеджеров.
  • папка УчётМЦ должна быть доступна для Бухгалтеров на чтение и запись. Группа Менеджеров не имеет доступа.
  • папка Приказы должна быть доступна для Бухгалтеров и Менеджеров только на чтение.

На папке Договора правой клавишей и там Свойства — вкладка Безопасность. Мы видим что какие-то группы и пользователи уже имеют к ней доступ. Эти права были унаследованы от родителя dostup\, а та в свою очередь от своего родителя С:

Мы прервём это наследование прав и назначим свои права-хотелки.

Жмём кнопку Дополнительно — вкладка Разрешения — кнопка Изменить разрешения.

Сначала прерываем наследование прав от родителя. Снимаем галочку Добавить разрешения, наследуемые от родительских объектов. Нас предупредят, что разрешения от родителя не будут применяться к данному объекту (в данном случае это папка Договора). Выбор: Отмена или Удалить или Добавить. Жмём Добавить и права от родителя останутся нам в наследство, но больше права родителя на нас не будут распространяться. Другими словами, если в будущем права доступа у родителя (папка dostup) изменить — это не скажется на дочерней папке Договора. Заметьте в поле Унаследовано от стоит не унаследовано. То есть связь родитель — ребёнок разорвана.

Теперь аккуратно удаляем лишние права, оставляя Полный доступ для Администраторов и Система. Выделяем по очереди всякие Прошедшие проверку и просто Пользователи и удаляем кнопкой Удалить.

Права на папку группе

Кнопка Добавить в данном окне Дополнительные параметры безопасности предназначена для опытных админов, которые смогут задать особые, специальные разрешения. Статья же нацелена на знания опытного пользователя.

Мы ставим галочку Заменить все разрешения дочернего объекта на разрешения, наследуемые от этого объекта и жмём Ок. Возвращаемся назад и снова Ок, чтобы вернуться к простому виду Свойства.

Данное окно позволит упрощённо достигнуть желаемого. Кнопка Изменить выведет окно «Разрешения для группы».

Права  группе

Жмём Добавить. В новом окне пишем Бухгалтеры и жмём «Проверить имена» — Ок. По умолчанию даётся в упрощённом виде доступ «на чтение». Галочки в колонке Разрешить автоматически выставляются «Чтение и выполнение», «Список содержимого папки», «Чтение». Нас это устраивает и жмём Ок.

Теперь по нашему техническому заданию нужно дать права на чтение и запись для группы Менеджеры. Если мы в окне Свойства, то снова Изменить — Добавить — вбиваем Менеджеры — Проверить имена. Добавляем в колонке Разрешить галочки Изменение и Запись.

Теперь нужно всё проверить!

Следите за мыслью. Мы приказали, чтобы папка Договора не наследовала права от свого родителя dostup. Приказали дочерним папкам и файлам внутри папки Договора наследовать права от неё.

На папку Договора мы наложили следующие права доступа: группа Бухгалтеры должна только читать файлы и открывать папки внутри, а группа Менеджеры создавать, изменять файлы и создавать папки.

Следовательно, если внутри директории Договора будет создаваться файл-документ, на нём будут разрешения от его родителя. Пользователи со своими учётными записями будут получать доступ к таким файлам и каталогам через свои группы.

Зайдите в папку Договора и создайте тестовый файл договор1.txt

На нём щелчок правой клавишей мыши и там Свойства — вкладка Безопасность — Дополнительно — вкладка Действующие разрешения.

Жмём Выбрать и пишем учётную запись любого бухгалтера, к примеру buh1. Мы видим наглядно, что buh1 получил права от своей группы Бухгалтеры, которые обладают правами на чтение к родительской папке Договора, которая «распространяет» свои разрешения на свои дочерние объекты.

Проверка прав доступа

Пробуем manager2 и видим наглядно, что менеджер получает доступ на чтение и запись, так как входит в группу Менеджеры, которая даёт такие права для данной папки.

Проверка прав доступа

Абсолютно так же, по аналогии с папкой Договора, накладываются права доступа и для других папок, следуя вашему техническому заданию.

Итог.

  • Используйте разделы NTFS.
  • Когда разграничиваете доступ на папки (и файлы), то манипулируйте группами.
  • Создавайте учётные записи для каждого пользователя. 1 человек = 1 учётная запись.
  • Учётные записи включайте в группы. Учётная запись может входить одновременно в разные группы. Если учётная запись находится в нескольких группах и какая-либо группа что-то разрешает, то это будет разрешено учётной записи.
  • Колонка Запретить (запрещающие права) имеют приоритет перед Разрешением. Если учётная запись находится в нескольких группах и какая-либо группа что-то запрещает, а другая группа это разрешает, то это будет запрещено учётной записи.
  • Удаляйте учётную запись из группы, если хотите лишить доступа, которого данная группа даёт.
  • Задумайтесь о найме админа и не обижайте его деньгами.

Задавайте вопросы в комментариях и спрашивайте, поправляйте.

Видеоматериал показывает частный случай, когда нужно всего лишь запретить доступ к папке, пользуясь тем, что запрещающие правила имеют приоритет перед разрешающими правила.

Дополнительные материалы:
Как связать Microsoft Access с MySQL.

Дата последней правки: 2015-12-01 09:57:26

Разграничение прав доступа в Windows

Статья о разграничении прав доступа в операционных системах Windows: дискретном и мандатном. В статье рассматриваются разграничения прав доступа к папкам и файлам на уровне операционной системы Windows и с помощью Secret Net.

Содержание:

  • Разграничение прав доступа на уровне операционной системы (дискретное разграничение в Windows)
  • Разграничение прав доступа с помощью Secret Net

Дискретное разграничение прав доступа

Для того, что бы настроить правила безопасности для папок нужно воспользоваться вкладкой «Безопасность». В Windows XP эта вкладка отключена по умолчанию. Для ее активации нужно зайти в свойства папки (Меню «Сервис» -> «Свойства папки» ->  «Вид») и снять флажок «Использовать простой общий доступ к файлам».

Свойства папки

Основные права доступа к папкам

В файловой системе NTFS в Windows XP существует шесть стандартных разрешений:

  1. Полный доступ;
  2. Изменить;
  3. Чтение и выполнение;
  4. Список содержимого папки;
  5. Чтение;
  6. Запись.

В Windows 10 нет стандартного разрешения «Список содержимого папки».

Эти разрешения могут предоставляться пользователю (или группе пользователей) для доступа к папкам и файлам. При этом право «Полный доступ» включат в себя все перечисленные права, и позволяет ими управлять.

Права доступа назначаются пользователю для каждого объекта (папки и файла). Для назначения прав нужно открыть меню «Свойства» и выбрать вкладку «Безопасность». После этого выбрать необходимо пользователя, которому будут назначаться разрешения.

Создайте папки по названиям разрешений, всего у вас будет 6 папок для Windows XP и для Windows 10. Я рассмотрю на примере Windows XP, на «десятке» вам будет проще. Скачайте папки по ссылке и скопируйте в них содержимое (не сами папки, а то, что в них находится).

Каталоги для примера

Отройте вкладку «Безопасность» в свойствах папки «Список содержимого папки». У меня есть пользователь user, вы можете добавить своего. Для того, что бы изменить право на объект нужно выбрать пользователя и указать ему разрешение, в данном случае «Список содержимого папки». Затем нажмите «Применить» и «ОК».

Выбор пользователя

Выбор пользователя
Список содержимого

По аналогии установите права для соответствующих папок.

После установки прав доступа проверьте их. Для этого войдите в операционную систему под пользователем, для которого устанавливали права, в моем случае это user.

Смена пользователя

«Список содержимого папки» — предоставляет возможность просмотра файлов и папок в текущем каталоге. То есть вы можете посмотреть, что есть в папке, но запустить и открыть ничего не получиться.

«Чтение» — предоставляет возможность открывать в папке все файлы, кроме исполняемых файлов (например, с расширением .exe).

«Чтение и выполнение» — предоставляет возможность открывать в данном каталоге все файлы.

«Запись» — предоставляет возможность добавления файлов в папку без права на доступ к вложенным в него объектам, в том числе на просмотр содержимого каталога.

«Изменить» — предоставляет возможность открывать и создавать (изменять) файлы в папке.

«Полный доступ» — предоставляет все возможности для работы с папкой и вложенными файлами, включая изменение разрешений.

Откройте каждую папку и проверьте, что разрешения выполняются.

Содержимое папки "Список содержимого"

Содержимое папки «Список содержимого»
Ошибка запуска исполняемого файла

Ошибка запуска исполняемого файла
Ошибка текстового файла

Ошибка текстового файла

Элементы разрешений на доступ

Каждое разрешение состоит из нескольких элементов, которые позволяют более гибко настраивать систему безопасности. Войдите в операционную систему под учетной записью администратора.

Просмотреть элементы разрешений на доступ можно, нажав на кнопку «Дополнительно» во вкладке «Безопасность» и выбрав любой элемент разрешений.

Элементы разрешений на доступ

Поэкспериментируйте с элементами и проверьте, как они работаю.

Элементы разрешений на доступ для записи

Владелец файла

В файловой системе NTFS у каждого файла есть свой владелец. Владельцем файла является пользователь операционной системы. Он может управлять разрешениями на доступ к объекту независимо от установленных разрешений.

Узнать, какой пользователь является владельцем файла или папки можно на закладке «Владелец» в дополнительных параметрах безопасности.

Владелец файла в NTFS

Наследование прав доступа

В файловой системе NTFS поддерживается наследование разрешений. Если вы устанавливаете разрешение на папку, то оно наследуется для всех вложенных файлов и папок.

При любых изменениях разрешений на родительскую папку они меняются в дочерних (вложенных) файлах и каталогах.

Для изменения унаследованных разрешений нужно открыть вкладку «Разрешения» в дополнительных параметрах безопасности. Там же можно отключить наследование разрешений.

Отключение наследования разрешений

Запреты

Кроме установки разрешений в файловых системах можно устанавливать запреты. Например, вы можете разрешить чтение и выполнение, но запретить запись. Таким образом, пользователь для которого установлен запрет и разрешения сможет запустить исполняемый файл или прочитать текстовый, но не сможет отредактировать и сохранить текстовый файл.

Запреты на объекты в файловой системе NTFS

В дополнительных параметрах безопасности можно посмотреть действующие разрешения и для конкретного пользователя.

Действующие разрешения

Разграничение прав доступа с помощью Secret Net (на примере версии 5.1)

При использовании Secret Net доступ к файлам осуществляется, в случае если пользователю присваивается соответствующий уровень допуска. В примере я использую Windows XP с установленным программным продуктом Secret Net 5.1.

Первым делом нужно запустить локальные параметры безопасности от имени Администратора: «Пуск –> Программы –> Secret Net 5 –> Локальная политика безопасности».

Локальная политика безопасности

Далее необходимо перейти в «Параметры Secret Net» –>  «Настройка подсистем» –> «Полномочное управление доступом: название уровней конфиденциальности».

Полномочное управление доступом: название уровней конфиденциальности

Введите названия уровней. У меня это:

  • Низший – Общедоступно.
  • Средний – Конфиденциально.
  • Высший – Секретно.

Название уровней доступа

Настройка субъектов

Настройка субъектов в Secret Net производится в группе «Локальные пользователи и группы». Зайдите в меню «Пуск» –>  «Программы» –>  «Secret Net 5» –> «Управление компьютером» –>  «Локальные пользователи и группы» –> «Пользователи».

Что бы настроить права администратора нужно выбрать учетную запись «Администратор» и перейти на вкладку Secret Net 5. Установим уровень доступа «секретно».

Настройка субъектов

Далее установите все флажки.

  • Управление категориями конфиденциальности означает, что пользователь имеет право изменять категории конфиденциальности папок и файлов, а так же может управлять режимом наследования категорий конфиденциальности папок.
  • Печать конфиденциальных документов означает, что пользователь может распечатывать конфиденциальные документы. Данная возможность появляется, если включен контроль печати конфиденциальных документов.
  • Вывод конфиденциальной информации означает, что пользователь может копировать конфиденциальную информацию на внешние носители.

Уровни доступа пользователя

После установки всех флажков нажмите «Применить» и «ОК».

Создадим нового пользователя. Для этого нужно перейти «Локальные пользователи и Группы» –> «Пользователи». Создайте новых пользователей, я назову их «Конфиденциальный» и «Секретный». По аналогии с пользователем Администратор  установите для новых пользователей аналогичные уровни доступа и настройки как на рисунках ниже.

Создание нового пользователя

Уровни доступа пользователей

Настройка объектов

Та или иная категория конфиденциальности является атрибутом папки или файла. Изменения этих атрибутов производятся уполномоченными пользователями (в данном случае Администратором). Категория конфиденциальности может присваиваться новым файлам или папкам автоматически или по запросу.

Автоматическое присваивание категории конфиденциальности можно включить или отключить в окне настройки свойств папки. Этот параметр может редактировать только пользователь, у которого есть права на «Редактирование категорий конфиденциальности».

Изменение категорий конфиденциальности

При этом стоит учесть, что категории конфиденциальности могут назначаться только папка и файлам в файловой системе NTFS. В случае если у пользователя нет такой привилегии, он может только повысить категорию конфиденциальности и только не выше своего уровня.

Попробуйте создать в паке новый файл или каталог, а после чего изменить ее уровень (повысить) и установить флажок «Автоматически присваивать новым файлам». У вас появиться окно «Изменение категорий конфиденциальности».

Выберите пункт «Присвоение категорий конфиденциальности всем файлам в каталоге» и нажмите «ОК» для присвоения категории конфиденциальности всем файлам кроме скрытых и системных файлов.

В случае если категория допуска пользователя выше чем категория конфиденциальности объект, то пользователь имеет право на чтение документа, но не имеет права изменять и сохранять документ.

Если пользователь с категорией «Общедоступно» попробует прочитать или удалить документ, то он получит соответствующие ошибки.

Отказано в доступе

То есть пользователь не может работать с документами, у которых уровень конфиденциальности выше, чем у него.

Если вы зайдете под пользователем «Секретный» то вы сможете повысить уровень конфиденциальности файлов и работать с ними.

Повышение уровня конфиденциальности

Не стоит забывать, что конфиденциальные файлы нельзя копировать в общедоступные папки, чтобы не допустить их утечки.

Контроль потоков данных

Контроль потоков данных используется для того, что бы запретить пользователям возможность понижения уровня конфиденциальности файлов.

Для этого нужно запустить «Локальные параметры безопасности»: «Пуск» – «Программы» –> «Secret Net 5» –>  «Локальная политика безопасности», затем перейти в группу «Параметры Secret Net» –>  «Настройки подсистем» и выбрать параметр  «Полномочное управление доступом: Режим работы» и включить контроль потоков. Изменения вступят в силу после перезагрузки компьютера.

Полномочное управление доступом: Режим работы

Если зайти (после перезагрузки) под пользователем «Секретный» появиться выбор уровня конфиденциальности для текущего сеанса. Выберите секретный уровень.

Выбор уровня конфиденциальности

Если вы откроете файл с уровнем «Конфиденциально», отредактируете его и попробуете сохранить под другим именем и в другую папку, то вы получите ошибку, так как уровень сеанса (секретный) выше, чем уровень файла (конфиденциальный) и включен контроль потоков данных.

На этом все, если у вас остались вопросы задавайте их в комментариях.


Операционные системы на базе Linux являются многопользовательскими, и поэтому вопрос разграничения доступа к файлам и директориям является важным и требующим внимания.

Механизм разграничения доступа базируется на именах пользователей, а также на названиях групп пользователей, состав которых изменяет и определяет root пользователь (суперпользователь). Пользователь может входить в одну или несколько групп и иметь права доступа в зависимости от группы, в которую он входит.

При создании файла у него появляется владелец, то есть пользователь, который запустил процесс его создания. Также определяется группа, которая будет иметь права на этот файл. Изменять владельца файла и группу файла можно при помощи команд chown и chgrp.

Команды chown и chgrp

Команда chown (расшифровывается как “change owner”) используется для изменения владельца файла. При этом выполнять изменение владельца должен обязательно суперпользователь. Вам нужно ввести название команды, затем имя пользователя, которого вы собираетесь сделать владельцем файла, и в конце название файла:

# chown имя_пользователя название_файла

Команда chgrp (сокращение от “change group”) используется для изменения группы файла. При этом выполнить команду может как суперпользователь, так и владелец файла, но он обязательно должен быть членом группы, которой он хочет передать права на файл. Вам нужно ввести команду, название группы файлов, которой вы передаете права, а затем название файла:

# chgrp название_группы название_файла

Сразу расскажу о полезном ключе -R (расшифровывается как “recursively”). Он позволяет применять команду не только к текущей директории, но и ко всем поддиректориям. Ключ можно использовать и с chown, и с chgrp. Использовать такую рекурсивную команду удобно в случае большой вложенности.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться


Права доступа

Зачем настраивать права доступа?

Права доступа всегда необходимо назначать и разграничивать – это крайне важный момент обеспечения безопасности вашей Linux-системы. В случае, когда хакеру удастся получить доступ к одному из ваших пользователей, грамотно настроенные права доступа к файлам и каталогам не дадут ему возможности сделать много неприятностей. Иными словами, настройка прав доступа даст вам возможность максимально ограничить ваши данные от попадания в чужие руки (естественно, если речь не идет о root или sudo пользователях без ограничений, которые могут изменять любые права под себя).

Как смотреть права доступа?

Перед тем, как перейти к самому процессу изменения прав, нужно понять, как смотреть уже имеющиеся права у файлов и каталогов. Делать это можно при помощи команды ls и ключа –l.

После ввода этой команды вы увидите содержимое текущего каталога, а также информацию о владельце и правах доступа.

Пример отобразившейся информации:

total 32
drwxr-xr-- 2 root root 4096 May 7 2016 bin
drwxr-xr-- 2 root root 4096 May 7 2016 etc
drwxr-xr-- 2 root root 4096 Aug 11 2016 games
drwxr-xr-- 2 user1 users May 5 12:00 Images
drwxr-xr-- 2 root root 4096 Mar 23 2016 sbin
-rw-r–-r-- 1 root root May 6 20:28 file1.txt
-rw-r–-r-- 1 root root May 6 09:58 kdm.log

Разберемся, что означают эти строки.

Первая буква в выводе обозначает тип файла. Самые популярные обозначения, которые вы будете встречать чаще всего, это:

  • — обычный файл;
  • d – каталог.

Помимо них есть и другие обозначения:

  • b — файл блочного устройства;
  • c — файл символьного устройства;
  • s  — доменное гнездо (socket);
  • p — именованный канал (pipe);
  • l — символическая ссылка (link).

Три следующие буквы, которые идут после первой, означают те права доступа, которые имеет пользователь-владелец этого файла или каталога. Расшифровываются они следующим образом:

  • r – read – право на чтение;
  • w – write – право на запись (изменение, в том числе и удаление);
  • x – execute – право на выполнение этого файла (если речь о каталоге, то просмотр оглавления и поиск в нем);
  • (прочерк) вместо одной из букв говорит о том, что соответствующего права у вас нет.

Поэтому по записи

-rw-r–-r-- 1 root root May 6 20:28 file1.txt

можно сказать о том, что это обычный файл, владельцем которого является пользователь root, и он может читать и изменять этот файл.

Следующие три буквы, которые идут после определения прав для владельца файла или каталога, означают права доступа для группы, которая владеет этим файлом.

В рассматриваемом нами примере выше у группы root будут права только на чтение файла.

Наконец, последние три буквы – это права доступа для всех остальных пользователей и групп, в том числе для абсолютно посторонних людей (если доступ в каталоги и файлы открыт на других ресурсах).

Изменение прав доступа

Для назначения и изменения прав доступа используется команда chmod (сокращенно от change mode). Она вводится в командную строку по следующей логике:

chmod кто=права файл/каталог

Вместо «кто» вам нужно подставить обозначение того, для кого будет назначены права доступа. Существуют следующие обозначения:

  • u – user – владелец файла;
  • g – group – группа, которой принадлежит файл;
  • o – other – остальные пользователи;
  • a – all – все (вместо сочетания ugo).

Далее вместо «права» вам нужно ввести обозначение права, которое вы хотите дать этому пользователю или группе. О существующих правах уже было рассказано выше. Эти права будут даны вместо имеющихся.

Наконец, вместо «файл/каталог» вам нужно написать в команде название файла или каталога, права к которому вы хотите изменить.

Примеры

Допустим, вы хотите, чтобы файл logs все сторонние (остальные) пользователи могли только читать. Для этого вам нужно ввести вот такую команду:

Даже если до этого у пользователей было больше прав (например, они могли еще и изменять файл), то теперь у них останется только право на чтение:

Вы можете комбинировать обозначения тех, кому хотите изменить права доступа. Например, если нужно изменить права доступа сразу и для владельца, и для группы, то можно написать вот так:

В этом случае владелец и группа смогут читать и изменять файл file1.txt.

Комбинировать можно и сами файлы или каталоги (если вы хотите изменить права сразу для нескольких файлов):

chmod ug=rw file1.txt file2.txt

Добавление и исключение прав

Еще один интересный нюанс – вы можете также использовать знаки плюса (+) и минуса (-). Это полезно в тех случаях, когда вы хотите предоставить (добавить) или убрать (лишить) какие-либо права.

К примеру, команда

даст остальным пользователям возможность редактировать этот файл.

Копирование прав

Также можно копировать (передавать) права доступа между разными пользователями. Допустим, вам нужно, чтобы остальные пользователи имели такие же права, как и владелец файла. Тогда вам нужно ввести следующую команду:

Но менять сами права при вводе команды такой конструкции нельзя.

Цифровое обозначение

Наверняка вы ни раз сталкивались с тем, что папкам или файлам даются права доступа в виде цифр. Например, 754, 755, 774 и т.д.

Каждая из цифр – это то же обозначение прав доступа для владельца, группы и остальных пользователей соответственно.

Расшифровка: чтение (r) – 4, запись (w) – 2 и выполнение (x) – 1. Если сложить все эти права, то получится 7 – такое право доступа может быть у владельца файла. Группа может иметь право на чтение и запись (4+2) – обозначается 1. И так далее.

Чтобы было понятнее:

  • 7 – r+w+x – чтение, запись, выполнение;
  • 6 – r+w – чтение и запись;
  • 5 – r+x – чтение и выполнение;
  • 4 – r – чтение;
  • 3 – w+x – запись и выполнение;
  • 2 – w – запись;
  • 1 – x – выполнение;
  • 0 – отсутствие каких-либо прав.

Такая запись пошла из двоичного кодирования восьмеричных цифр, то есть 754 – это восьмеричная запись 9 бит, которые задают права для файла или каталога.

При желании вы можете использовать команду chmod с цифровым кодированием:

Примеры

644 – владелец файла может читать и изменять файл, а остальные пользователи (в том числе и группа) – только читать;

777 – все пользователи могут читать, изменять и выполнять файл.

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

Дополнительно

Изменять права доступа можно не только через командную строку, но в различных файловых менеджерах, где это обычно более удобно и наглядно. Например, в Total Commander выставление прав выглядит следующим образом:

Права доступа 644

В Filezilla: 

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как обновить драйвера для наушников на windows 10
  • Указатели для мыши windows 7 указатели мыши для windows 7
  • Как сменить пароль пользователя windows server 2012
  • Ssh for windows powershell
  • 0x800f0950 windows server 2019