Як налаштувати права доступу до папок і файлів в Windows
Налаштування NTFS-дозволів на папки через графічний інтерфейс, icacls і PowerShell. Дозволи для користувачів і груп.
NTFS-дозволи визначають хто може читати, записувати або запускати файли і папки. Правильне налаштування — основа безпеки файлової системи.
Типи NTFS-дозволів
| Дозвіл | Що дозволяє |
|---|---|
| Full Control | Все, включаючи зміну дозволів |
| Modify | Читання, запис, видалення |
| Read & Execute | Читання і запуск |
| List Folder Contents | Перегляд вмісту папки |
| Read | Тільки читання |
| Write | Запис і створення |
Через графічний інтерфейс
Крок 1. Правий клік на папку → Properties → вкладка Security.
Крок 2. Натисни Edit → Add → введи ім'я користувача або групи → Check Names → OK.
Крок 3. Вибери користувача → постав або зніми галочки в колонках Allow / Deny.
Крок 4. OK → Apply.
Через icacls (CMD)
Переглянути поточні дозволи:
icacls "C:\MyFolder"
Дати користувачу повний доступ:
icacls "C:\MyFolder" /grant John:(OI)(CI)F
Дати тільки читання:
icacls "C:\MyFolder" /grant John:(OI)(CI)R
Забрати дозвіл:
icacls "C:\MyFolder" /remove John
Позначення:
(OI)— Object Inherit (поширюється на файли)(CI)— Container Inherit (поширюється на підпапки)F— Full ControlM— ModifyRX— Read & ExecuteR— ReadW— Write
Скопіювати дозволи з однієї папки на іншу
icacls "C:\Source" /save permissions.txt
icacls "C:\Destination" /restore permissions.txt
Через PowerShell
Переглянути дозволи:
(Get-Acl "C:\MyFolder").Access | Select-Object IdentityReference, FileSystemRights, AccessControlType
Додати дозвіл:
$acl = Get-Acl "C:\MyFolder"
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule("John","ReadAndExecute","ContainerInherit,ObjectInherit","None","Allow")
$acl.SetAccessRule($rule)
Set-Acl "C:\MyFolder" $acl
Взяти право власності (якщо немає доступу)
takeown /f "C:\LockedFolder" /r /d y
icacls "C:\LockedFolder" /grant Administrators:F /t
Заблокувати доступ до папки для всіх крім адміна
icacls "C:\SecretFolder" /inheritance:r
icacls "C:\SecretFolder" /grant Administrators:(OI)(CI)F
icacls "C:\SecretFolder" /deny Everyone:(OI)(CI)R
Також дивись: Як заблокувати обліковий запис користувача