🛡️ Права доступа в Windows
NTFS-разрешения, наследование, icacls, UAC, группы и общие папки.
Шпаргалки · Администрирование · #windows #permissions #ntfs #acl #security
Модель
Доступ к файлам и папкам NTFS определяют ACL: список записей (ACE) «кому → что разрешено или запрещено». Результат это сумма разрешений пользователя и всех его групп; запрет побеждает разрешение.
Основные разрешения
| Разрешение | Что даёт |
|---|---|
| Полный доступ (Full control) | всё, включая смену прав |
| Изменение (Modify) | чтение, запись, удаление |
| Чтение и выполнение | просмотр и запуск |
| Список содержимого папки | видеть список |
| Чтение | читать данные |
| Запись | создавать и изменять |
Каждое состоит из специальных разрешений (создание файлов, удаление подпапок, смена владельца и др.).
Наследование
Вложенные объекты наследуют права родителя. Можно отключить наследование и скопировать права или удалить унаследованные. Управление: свойства → Безопасность → Дополнительно.
icacls
icacls D:\Data :: показать права
icacls D:\Data /grant "Anna":(OI)(CI)M :: изменение с наследованием для файлов и папок
icacls D:\Data /grant "Domain Users":(OI)(CI)RX :: чтение и выполнение
icacls D:\Data /deny "Guests":(OI)(CI)F
icacls D:\Data /remove "Anna"
icacls D:\Data /inheritance:r :: отключить наследование
icacls D:\Data /reset /T :: сбросить права рекурсивно
Права: F полный, M изменение, RX чтение и выполнение, R чтение, W запись. (OI) наследуют файлы, (CI) наследуют папки.
Владелец
takeown /f D:\Data /r /d y :: стать владельцем
icacls D:\Data /setowner "Administrators" /T
Общие папки (SMB)
Два уровня: разрешения общего ресурса и разрешения NTFS; действует более строгое. Практика: общему ресурсу дать «Все: изменение», а управлять доступом через NTFS.
New-SmbShare -Name Docs -Path D:\Docs -FullAccess "Domain Admins" -ChangeAccess "Staff"
Get-SmbShare; Get-SmbShareAccess Docs
Пользователи и группы
net user anna P@ssw0rd /add
net localgroup Administrators anna /add
whoami /groups
Мнение по организации: назначайте права группам, а людей добавляйте в группы (модель AGDLP в домене).
UAC
Контроль учётных записей запрашивает подтверждение для действий с правами администратора. Запуск программы от администратора: ПКМ → «Запуск от имени администратора», runas /user:Admin cmd.
Диагностика
Вкладка «Действующие разрешения» в дополнительных параметрах безопасности, журнал аудита доступа, Get-Acl D:\Data | Format-List.
Совет: Принцип наименьших привилегий: давайте минимум, достаточный для работы, и делайте это через группы.