Сделать стартовойДобавить в закладки  
Главная страничка Главная страничка
В номере:

Выходит с 17 июля 2008 г. цена договорная

Опрос

конечно, он настанет в 2012 г.
да, но не в 2012 г.
нет, это фантастика
а что такое конец света
а мне пофиг - я буду уже мертв



Календарь
«    Декабрь 2010    »
ПнВтСрЧтПтСбВс
 12345
6789101112
13141516171819
20212223242526
2728293031 

Архив новостей
Январь 2021 (1)
Ноябрь 2020 (2)
Июль 2020 (2)
Июнь 2020 (3)
Май 2020 (1)
Март 2020 (1)

Информация
Изменение NTFS прав на папки и файлы из командной строки
OS, мобильные OS » Windows
автор: dimon, опубликовано: 25 декабря 2010

Давайте попробуем разобраться, как можно настраивать NTFS права на папки и файлы, используя командную строку Windows (cmd).

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

NTFS права, они же Access Control List — список контроля доступа, это список прав пользователей при доступе к файлам и папка. Это способ ОС защитить файлы и папки от несанкционированного доступа.
Когда пользователь пытается получить доступ к файлу, ОС открывает таблицу NTFS прав (ACL) и смотрит что разрешено данному пользователю делать с данным файлом.

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

Для управления ACL (NTFS правами на файлы и папки) в операционной системе есть встроенная консольная утилита CACLS. Вот ее man:

D:\>cacls /?
Просмотр и изменение таблиц управления доступом (ACL) к файлам

CACLS имяФайла [/T] [/E] [/C] [/G имя:доступ] [/R имя [...]]
               [/P имя:доступ [...]] [/D имя [...]]
   имяФайла       Вывод таблиц управления доступом.
   /T             Замена таблиц управления доступом для указанных файлов
                  в текущем каталоге и всех подкаталогах.
   /E             Изменение таблицы управления доступом вместо ее замены.
   /C             Продолжение при ошибках отказа в доступе.
   /G имя:доступ  Определение разрешений для указанных пользователей.
                  "доступ": R  Чтение
                            W  Запись
                            C  Изменение (запись)
                            F  Полный доступ
   /R имя         Отзыв разрешений для пользователя (только вместе с /E).
   /P имя:доступ  Замена разрешений для указанного пользователя.
                  "доступ": N  Отсутствует
                            R  Чтение
                            W  Запись
                            C  Изменение (запись)
                            F  Полный доступ
   /D имя         Запрет на доступ для указанного пользователя.
Для выбора нескольких файлов используются подстановочные знаки.
В команде можно указать несколько пользователей.

Сокращения:
   CI - Наследование контейнерами (Container Inherit).
        ACE будет унаследован папками.
   OI - Наследование объектами (Object Inherit).
        ACE будет унаследован файлами.
   IO - Только наследованное (Inherit Only).
        ACE не будет применим к текущему файлу/папке.

D:\>


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



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

У нас на диске D:\ есть тестовая папочка с именем Papka.

Посмотрим NTFS права, назначенные для этой папки:

D:\>cacls d:\papka
d:\papka NT AUTHORITY\SYSTEM:(OI)(CI)F
         BUILTIN\Администраторы:(OI)(CI)F
         BUILTIN\Пользователи:(OI)(CI)R
         СОЗДАТЕЛЬ-ВЛАДЕЛЕЦ:(OI)(CI)(IO)F


D:\>


Для того чтобы разобраться, что же нам выдала cacls, рассмотрим по строкам ее ответ и эти же права если смотреть их из под GUI:

NT AUTHORITY\SYSTEM:(OI)(CI)F – см. следующую строку – там такие же права;

BUILTIN\Администраторы:(OI)(CI)F – группа Администраторы имеет полные права (буква F), права наследуются файлами (буквы OI), наследуются папками (буквы CI):

NTFS права группы BUILTINАдминистраторы


BUILTIN\Пользователи:(OI)(CI)R – группа Пользователи имеет права только чтение (буква R), права наследуются файлами (буквы OI), наследуются папками (буквы CI):

NTFS права группы BUILTINПользователи


СОЗДАТЕЛЬ-ВЛАДЕЛЕЦ:(OI)(CI)(IO)F – владелец файла (тот пользователь, который создал файл) имеет полные права (буква F), права наследуются файлами (буквы OI), наследуются папками (буквы CI) и имеют только наследование (буквы IO):

NTFS права создателя-владельца


А вот более подробно:

NTFS права создателя-владельца




Чтобы дать полные права новому пользователю на нашу тестовую папку из командной строки нужно выполнить cacls с такими параметрами:

D:\>cacls d:\papka /E /G dimon:F
обработан каталог: d:\papka

D:\>


А теперь проверим результат:

D:\>cacls d:\papka
d:\papka NT AUTHORITY\SYSTEM:(OI)(CI)F
         BUILTIN\Администраторы:(OI)(CI)F
         BUILTIN\Пользователи:(OI)(CI)R
         СОЗДАТЕЛЬ-ВЛАДЕЛЕЦ:(OI)(CI)(IO)F
         COMP\dimon:(OI)(CI)F


D:\>


Можно заметить, что появилась новая строка, которая говорит нам, что локальный пользователь dimon имеет полные права (буква F), права наследуются файлами (буквы OI), наследуются папками (буквы CI). Проверим это и в проводнике:

NTFS права пользователя


Удалить доступ юзеру dimon к нашей тестовой папочке можно командой:

D:\>cacls d:\papka /E /R dimon
обработан каталог: d:\papka


Проверим:

D:\>cacls d:\papka
d:\papka NT AUTHORITY\SYSTEM:(OI)(CI)F
         BUILTIN\Администраторы:(OI)(CI)F
         BUILTIN\Пользователи:(OI)(CI)R
         СОЗДАТЕЛЬ-ВЛАДЕЛЕЦ:(OI)(CI)(IO)F


D:\>


Строка, соответствующая правам пользователя dimon, исчезла.

А теперь и удалим папку совсем:

D:\>rmdir d:\papka

D:\>


Надеюсь, что я все просто и подробно расписал. Если есть вопросы – добро пожаловать в комментарии fellow

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

Другие новости по теме:

  • Измение буквы диска с помощью командной строки
  • Как создать общую папку из командной строки
  • Автоматизация установки ethernet принтеров
  • Управление пользователями в Windows из командной строки
  • Настройка кэширующего прокси-сервера с модулем статистики


  • Комментарии:

    Оставить комментарий

    #1 написал: jakv (28 января 2011 23:20)
    Действительно просто для простого случая
    А какой командой задать такие права
    D:\tmp\sl\u1>cacls wr
    D:\tmp\sl\u1\wr BUILTIN\Администраторы:(OI)(CI)R
    BUILTIN\Пользователи:(OI)(CI)R
    BUILTIN\Пользователи:(OI)(CI)(IO)(специальный доступ:)
    DELETE
    READ_CONTROL
    SYNCHRONIZE
    FILE_GENERIC_READ
    FILE_GENERIC_WRITE
    FILE_GENERIC_EXECUTE
    FILE_READ_DATA
    FILE_WRITE_DATA
    FILE_APPEND_DATA
    FILE_READ_EA
    FILE_WRITE_EA
    FILE_EXECUTE
    FILE_DELETE_CHILD
    FILE_READ_ATTRIBUTES
    FILE_WRITE_ATTRIBUTES
    D:\tmp\sl\u1>
    #2 написал: dimon (31 января 2011 10:14)
    jakv, конечно это простейший вариант и он не позволяет более тонко настраивать права. Однако, есть еще утилита командной строки Icacls.exe, которая позволяет делать то, что тебе нужно - более тонко настраивать права доступа к файлам и папкам.
    Но она доступна только начиная с Windows Vista и Windows Server 2003 с SP2


     
    Информация
     
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


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


    Облако тегов
    Android, Arduino, backup, CentOS, cmd, css, div, DLE, DLE хаки, domoticz, dzvents, event, Linux, log, LUA, Monster, ogf3, RDP, Template, VBS, w2k8, windows, WSH, бумага, бумажный самолетик, верстка, иструкция, Карты, кино, Навигация, оригами, программа, рецензия, рецепт, скрипт, фигуры, шаблон, Яндекс, яндекс-карты

    Показать все теги
    Реклама
    раскрутка сайта бесплатно
    Главная страница | Регистрация | Добавить новость | Новое на сайте | Статистика | Поддержка | Правила ресурса Copyright © 2005-2018 by dimon - all right reserved!
    Тираж:           экземпляров.   Дизайн, верстка by dimon