Файлы по-прежнему могут быть изменены даже после установки разрешения «Только для чтения» ICACLS. Почему это не работает?

594
kaly

Я являюсь администратором на моем ПК, и на нем есть другие пользователи. Я установил папку (Gabi) как «Только для чтения» для определенного пользователя (Алиса), используя ICACLS через командную строку (я использую windows 7 в VirtualBox). В папке есть несколько файлов ".txt". Я использовал следующую команду:

icacls "C:\ITSM Lab1\Administration\Gabi" /grant:r Alice:(OI)(CI)R /T 

Вышеуказанная команда успешно выполнена в командной строке. Но файлы в папке все еще можно изменить (Алиса может изменить текстовый файл и сохранить файл. Он также может переименовать. Он может даже удалить всю папку с файлами).

Я также попробовал эту ссылку: Используйте icacls, чтобы сделать каталог доступным только для чтения в Windows 7 . Я перешел по ссылке и попробовал следующую команду:

C:\Windows\system32\Icacls "C:\ITSM Lab1\Administration\Gabi" /deny "Alice": (CI)(OI)(W,D) /Grant:r "Alice":(CI)(OI)R /T 

В приведенной выше команде я запретил «писать» и «удалять» для Алисы и дал Алисе разрешение «только для чтения». Эта команда выполнена успешно, но папка «Габи» становится полностью недоступной и не удаляемой, что не соответствует моей цели.

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

Я не знаю, почему команды на самом деле не устанавливают разрешение «только для чтения». На самом деле я хочу установить разрешение таким образом, чтобы Алиса могла читать текстовые файлы, но не смогла изменить / удалить файлы / папку, и он не сможет создать новый файл / папка в папке "Габи". Я только что проверил разрешение для Алисы через GUI (вкладка «Безопасность»): в столбце «Разрешить» отмечена только галочка «Чтение» (других галочек нет). Таким образом, графический интерфейс показывает, что разрешение «только для чтения» применяется к папке Gabi. Но Алиса все еще может изменять и удалять эти файлы и папку. Я не знаю почему.

Что я делаю неправильно?


Перед выполнением первой команды icacls "C:\ITSM Lab1\Administration\Gabi" /grant:r Alice:(OI)(CI)R /Tя выполнил следующую команду:

icacls "C:\ITSM Lab1\Administration\Gabi" /grant Alice:R /T 

Когда я запускаю команду: icacls "C:\ITSM Lab1\Administration\Gabiя получаю следующий результат:

icacls "C:\ITSM Lab1\Administration\Gabi" C:\ITSM Lab1\Administration\Gabi Tanvir-PC\Alice:(R) Tanvir-PC\Alice:(OI)(CI)(R) Tanvir-PC\Gabi:(OI)(CI)(F) Tanvir-PC\SysAdministrator:(OI)(CI)(F) Tanvir-PC\CEO:(OI)(CI)(F) Tanvir-PC\Managers:(I)(OI)(CI)(N) Tanvir-PC\SysAdministrator:(I)(OI)(CI)(F) Tanvir-PC\CEO:(I)(OI)(CI)(F) BUILTIN\Administrators:(I)(F) BUILTIN\Administrators:(I)(OI)(CI)(IO)(F) NT AUTHORITY\SYSTEM:(I)(F) NT AUTHORITY\SYSTEM:(I)(OI)(CI)(IO)(F) BUILTIN\Users:(I)(OI)(CI)(RX) NT AUTHORITY\Authenticated Users:(I)(M) NT AUTHORITY\Authenticated Users:(I)(OI)(CI)(IO)(M) Successfully processed 1 files; Failed processing 0 files 

the result screenshot


ОБНОВИТЬ:

В моем Windows 7 (в VirtualBox) есть 4 локальные группы (которые я создал из командной строки):

Администрация
генерального директора
Менеджеры
SysAdministrator

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

Пользователи в « Администрации »: Алиса, Габи

Пользователи в « CEO »: главный

Пользователи в « Менеджерах »: Энтони, Элиза

Пользователи в " SysAdministrator ": Admin

groups Users

0
Я выполнил команду C: \> icacls "C: \ Workplace \ Topics \ Rasu". Результат, который я получил для Hary: --- C: \ Workplace \ Topics \ Rasu Kaly-PC \ Hary: (R) Kaly -PC \ Хари: (ОИ) (Cl) (R) kaly 6 лет назад 0
ХОРОШО. Прежде всего, предоставление разрешения (R) ead ** не делает объект (например, файл или папку) доступным только для чтения. NTFS-разрешения являются «аддитивными», то есть все разрешения, которые есть у пользователя, складываются вместе, чтобы определить, что они могут делать. Какова ваша конечная цель здесь? Чтобы сделать так, что только определенный пользователь (или группа пользователей) может читать, но не изменять эту папку и ее содержимое? Twisty Impersonator 6 лет назад 0
моя цель: определенный пользователь может читать, но больше ничего не может kaly 6 лет назад 1

1 ответ на вопрос

1
Twisty Impersonator

Проблема: Вы пользователь в настоящее время предоставляются дополнительные права

Я хочу установить разрешение таким образом, чтобы Алиса могла читать текстовые файлы, но не смогла изменить / удалить файлы / папку

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

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

Согласно выводу icacls "C:\ITSM Lab1\Administration\Gabi"команды следующие удостоверения имеют (M) odify или (F) полное разрешение на папку (я исключил SYSTEM):

  • Tanvir-PC \ Gabi: (OI) (CI) (F)
  • Tanvir-PC \ SysAdministrator: (OI) (CI) (F)
  • Tanvir-PC \ CEO: (OI) (CI) (F)
  • Tanvir-PC \ SysAdministrator: (I) (OI) (CI) (F)
  • Tanvir-PC \ CEO: (I) (OI) (CI) (F)
  • ВСТРОЕНЫ \ Администраторы: (I) (F)
  • ВСТРОЕНЫ \ Администраторы: (I) (OI) (CI) (IO) (F)
  • NT AUTHORITY \ Аутентифицированные пользователи: (I) (M)

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

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

Доступные решения

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

Если вышеупомянутое не вариант, вы можете запретить вашему пользователю следующие разрешения для папки. Разрешения «Запретить» всегда переопределяют разрешения «Разрешить», поэтому это будет противодействовать любым разрешениям «Разрешить», независимо от того, как они предоставляются:

Разрешения для Deny:

  • WD - записать данные / добавить файл
  • AD - добавить данные / добавить подкаталог
  • WA - написать атрибуты
  • DC - удалить ребенка
  • DE - удалить
  • WEA - написать расширенные атрибуты

Примечание. Использование разрешений «Запретить» обычно является плохой идеей и должно использоваться только в качестве крайней меры.


Лучший способ управлять разрешениями

Обычно необходимо предоставить нескольким пользователям следующие разрешения для папки:

  • Читать
  • изменять

Наилучшим подходом, который сводит к минимуму работу, связанную с предоставлением / отзывом разрешений пользователям, является использование групп ресурсов . Группа ресурсов - это просто группа, которой предоставлен определенный тип разрешения для объекта. Например, вашей папке потребуются следующие группы:

  • r_Gabi-Read (предоставленные разрешения на чтение)
  • r_Gabi-Modify (предоставлены права на изменение)

Чтобы изменить права доступа пользователя или группы к объекту, вы просто добавляете / удаляете их из членства в соответствующей группе ресурсов. Это быстрее, чем изменение прав доступа к самому объекту. Кроме того, у него есть явное преимущество, заключающееся в том, что в оснастке MMC «Пользователи и группы Active Directory» (или «Локальные учетные записи» для компьютеров, не входящих в домен) четко указывается, кто к чему имеет доступ.

Эта стратегия требует, чтобы в дополнение к разрешениям группам ресурсов, вы только предоставить дополнительные разрешения Full Control к SYSTEMи Administratorsидентичностей. Никакие другие разрешения не должны предоставляться на объект.

`Authenticated Users` не то же самое, что` Users`. Это две отдельные группы. Вот некоторые материалы, которые вам помогут: [О разрешениях NTFS] (http://techgenix.com/understanding-windows-ntfs-permissions/); [Явные и унаследованные разрешения] (http://www.ntfs.com/ntfs-permissions-explicit.htm); [Основные разрешения] (http://www.ntfs.com/ntfs-permissions-file-folder.htm); [Определение действующих разрешений] (http://www.ntfs.com/ntfs-permissions-file-effective.htm); Twisty Impersonator 6 лет назад 0
Комментарии не для расширенного обсуждения; этот разговор был [перемещен в чат] (http://chat.stackexchange.com/rooms/67210/discussion-on-answer-by-twisty-impersonator-files-can-still-be-modified-even-aft) , Journeyman Geek 6 лет назад 0

Похожие вопросы