Это то, что я делал на своем Windows 2008r2
Вы вошли в систему как администратор (UAC отключен для тестирования)
Выберите папку
Изменить расширенные разрешения
Снимите флажок «Включить наследуемые разрешения» и нажмите кнопку «Удалить», чтобы удалить наследуемые разрешения.
Получил сообщение «Никто не сможет получить доступ к папке, кроме владельца». В этот момент я подумал, что у администратора все еще должен быть доступ и «никто» ко мне не относится :)
После ответа «ОК» я потерял контроль над окном разрешений и получил сообщение «Доступ запрещен». Единственный вариант - стать владельцем и вернуть администратора с полным доступом.
Есть ли в Windows корневой эквивалент Linux, который может иметь доступ к файлу без предоставления полного контроля?
Если нет, то единственный вариант администрирования файлов в Windows - предоставить администратору полный доступ ко ВСЕМ файлам (я исключаю вариант владения как непрактичный)?
Есть ли в Windows корневой эквивалент Linux, который может иметь доступ к файлу без предоставления полного контроля?
Вы можете заставить системных администраторов использовать обычные учетные записи пользователей и предоставить им учетные записи с правами администратора, когда им нужно выполнять административные задачи, такие как назначение разрешений. В конце концов, все диалоги безопасности теперь поддерживают UAC. Однако повышение прав за счет олицетворения не является простым и практичным в каждой среде или ситуации, и все еще есть странные задачи, которые в лучшем случае затрудняют выполнение запроса только администратором. Большинству сторонних поставщиков, IMX, по-прежнему требуются полные права администратора для систем, в которых установлено их программное обеспечение, потому что разработчики ненавидят документировать, какая безопасность им нужна, а технические специалисты поставщиков ненавидят иметь дело с безопасностью в системе, которой они не будут управлять.
Чтобы ответить на вопрос напрямую, эквивалент в Windows корню Linux будет олицетворять учетную запись SYSTEM (NT AUTHORITY \ SYSTEM, aka LocalSystem), что технически возможно, но всегда считалось крайне плохой практикой (за пределами нескольких узких областей, таких как запросы WMI), и вы никогда не должны этого делать, потому что вам никогда не нужно (и, действительно, учетная запись не разрешена интерактивный вход в систему, и вы не разрешено устанавливать пароль учетной записи, хотя я думаю, что вы выполняете в этом контексте с AT.EXE
задачи). У вас, конечно же, будут поставщики программного обеспечения, которые настаивают на том, чтобы их сервисы по запуску продуктов были СИСТЕМНЫМИ. Опять же, они делают это потому, что разработчики не хотят документировать или поддерживать документацию о том, какие разрешения действительно нужны их программе, а не потому, что им действительно нужен доступ к СИСТЕМЕ.
Учетная запись SYSTEM, как и root, имеет самые высокие разрешения и только она может делать определенные вещи. Только SYSTEM имеет доступ к файлам, в которых хранятся базы данных безопасности, даже если эти пароли хранятся в зашифрованном виде. Только службы и ядро работают как СИСТЕМА. Вот почему лучше не позволять службам, отличным от Windows, работать как SYSTEM. Это гораздо больше разрешений, чем им нужно.
Однако вы все равно можете отменить доступ СИСТЕМЫ к файлам и папкам. Как вы обнаружили, NTFS может иметь папки или файлы, для которых не существует ACE, и поэтому ни одна учетная запись не может получить доступ к файлу или папке, включая SYSTEM (хотя системе всегда разрешено перечислять элемент, ACL и владелец, а не какое-либо содержимое или дочерние элементы объекта). Владелец файла или папки - единственный способ восстановить доступ в этом состоянии.
Если нет, то единственный вариант администрирования файлов в Windows - предоставить администратору полный доступ ко ВСЕМ файлам (я исключаю вариант владения как непрактичный)?
Не использовать полный доступ непрактично. Вам необходимо назначить группе администраторов полный доступ к тому, что им нужно администрировать, потому что Полный доступ предоставляет разрешение на изменение. Вы мог попробуйте выяснить, какие разрешения вам нужны для управления всей папкой, используя только компоненты, но вы быстро обнаружите, что вам придется предоставить полный доступ, чтобы иметь возможность выполнять любое реальное администрирование в любом случае.
Take Ownership в первую очередь предназначен для использования, когда права доступа к файлам случайно полностью удалены (например, ваш опыт) или когда учетные записи пользователей удалены / отключены. в отличие chown
, вы можете назначить право собственности только себе или группе администраторов. Однако в зависимости от того, как работает ваше программное обеспечение резервного копирования, вам может потребоваться сценарий для управления файлами на ваших файловых серверах.
Также обратите внимание, что администраторы имеют право владеть корневой папкой каждого диска в системе. На самом деле вы не мешаете злонамеренному члену группы что-либо делать. У них уже есть ключи от королевства. Это не глубокая защита, потому что на самом деле нет дополнительных механизмов безопасности. Вам просто нужно попросить права собственности, и вы ее получите.
Вот - это статья, в которой содержится больше информации о списках ACL Windows, чем вы когда-либо хотели, включая некоторую хорошую документацию по старому формату записи управления доступом SDDL. Этот метод немного потерял популярность, потому что Get-ACL
и Set-ACL
намного проще в использовании ... не то, чтобы это о многом говорило.
Есть ли в Windows корневой эквивалент Linux, который может иметь доступ к файлу без предоставления полного контроля?
Нет. Если ваш пользователь-администратор не имеет разрешений на выполнение действий с файлом (явно или через членство в группе), он не сможет выполнять действия с файлом.
Исключением, которое вы отметили, является владение файлом / папкой. Административный пользователь всегда сможет стать владельцем файла и таким образом изменить права доступа.
Если нет, то единственный вариант администрирования файлов в Windows - предоставить администратору полный доступ ко ВСЕМ файлам (я исключаю вариант владения как непрактичный)?
Не совсем понятно, что вы имеете в виду под этим, но в целом, если вы хотите, чтобы пользователь управлял файлом или папкой, да, для этого у них должны быть разрешения файловой системы.