Пользователи, группы, права доступа на файлы и каталоги в Windows.

Посмотреть локальных пользователей в графическом интерфейсе Windows.


Точно так же можно увидеть локальные группы в интерфейсе Windows.



Get-LocalUser - посмотреть локальных пользователей через PowerShell 5.1 и выше.



Get-LocalGroup - посмотреть локальные группы через PowerShell 5.1 и выше.


Get-LocalGroupMember Administrators - проверить пользователей принадлежищих к локальной группе Administrators в PowerShell 5.1 и выше.

"net user Guest *" - сменить пароль пользователя.



"net user Guest /logonpasswordchg:yes" - при следующем логине пользователь должен сменить пароль.


Добавление пользователя в графическом интерфейсе Windows, через Computer Management.


Удаление пользователя



"net user testuser3 * /add" - добавляем пользователя.

 "Get-LocalUser" - проверяем создался ли он.

"net user testuser3 /logonpasswordchg:yes" - форсим смнеу пароля при логине.


"net user testuser5 * /add /logonpasswordchg:yes" - одной командой создаем пользователя, указываем *, чтобы пароль запросило ввести но не отображало в командой строке.



"net user testuser7 SecurPassw0rd /add /logonpasswordchg:yes" - вариант для задания пароля в командой строке, который отобразиться и сохрнатиться в истории командной строки...

"Get-LocalUser"


"net user testuser3 /del" - удалим пользователя testuser3.
"Remove-LocalUser testuser5" - удалим пользователя testuser5, другой командой.
"Remove-LocalUser testuser7" - удалим пользователя testuser7
"Get-LocalUser"


"net user Guest" - посмотреть информацию о локальном пользователе.


В Windows разрешения на доступ к файлам и каталогам назначаются с помощью ACLs, в частности,  дискреционными списками управления доступом (DACLs)

Read: пользователь или приложение может просматривать содержимое файла или папки, но не могут изменять или удалять файлы.

Write: пользователь или приложение может создавать, изменять или удалять файлы и папки, включает в себя возможность сохранения изменений в документах или создания новых файлов.

Modify: объединяет права Read, Write и Execute пользователь или приложение может как просматривать, так изменять и запускать исполняемые файлы.

List Folder Contents: включает в себя Read и Execute, позволяет просматривать список файлов и подпапок внутри определенной папки, не включает в себя доступ к самим файлам.

Execute: позволяет запускать исполняемые файлы (например, программы или скрипты).

Full Control: наивысший уровень доступа, пользователь или приложение может выполнять любые операции с файлами, включая изменение прав доступа других 

Special Permissions: кроме основных прав доступа, существуют дополнительные параметры, такие как права на изменение атрибутов файла, наследование разрешений и другие.

Важно помнить, что NTFS-права и разрешения для общего доступа (share permissions) взаимодействуют, чтобы регулировать доступ. Вот некоторые правила:
Если файл доступен локально, используются только NTFS-права.
Если файл доступен через общий доступ, используются и NTFS-права, и разрешения для общего доступа. Применяется наиболее строгое разрешение.
Права пользователя объединяются с правами групп, к которым он принадлежит. Если пользователь имеет право на чтение файла, но состоит в группе с правами на изменение этого файла, его эффективное разрешение будет на уровне изменения.
Права, назначенные непосредственно для конкретного файла или папки (явные разрешения), имеют приоритет перед наследованными разрешениями от родительской папки (наследуемые разрешения)


"icacls 'C:\Users\Administrator\Desktop" (Improved Change ACLS ) - отображает или изменяет дискреционные списки управления доступом (DACL) для указанных файлов, а также применяет сохраненные списки DACL к файлам в указанных каталогах.


"icacls /?" - Improved Change ACLS 

F - full access
(I) - permission inherited from parent container
(OI) - object inherit
(CI) - container inherit















Синтаксис для PowerShell:

icacls 'C:\TestFolder\' /grant 'Everyone:(OI)(CI)(R)' - добавим группе Everyone, которая включает в себя всех пользователей право на чтение.

icacls 'C:\TestFolder\' /grant 'Guest:(OI)(CI)(W)' - добавим пользователю Guest право писать.

icacls 'C:\TestFolder\' - проверим результат


Синтаксис для CMD:

icacls "C:\TestFolder" /grant Everyone:(OI)(CI)(R) - добавим группе Everyone, которая включает в себя всех пользователей право на чтение.

icacls "C:\TestFolder" /grant Guest:(OI)(CI)(W) - добавим пользователю Guest право писать.

icacls "C:\TestFolder" 
проверим результат






Синтаксис для PowerShell:

icacls 'C:\TestFolder\' /remove Everyone - удалим группу Everyone.

icacls 'C:\TestFolder\' /deny 'Guest:(OI)(CI)(W)' - запретим ранее выданое пользователю Guest право писать.

icacls 'C:\TestFolder\' - проверим результат.



Синтаксис для PowerShell:

icacls 'C:\Windows\Temp' - проверим настройки временного каталога.

mkdir C:\Windows\Temp\test - создадим каталог, чтобы увидеть унаследованные права. 

WD - write data/add file
AD - append data/add subdirectory
S - synchronize
X - execute/traverse
                (OI) - object inherit
                (CI) - container inherit
                (IO) - inherit only



Комментарии