Reputation:
Coming from a .Net development background with not that much experience in (NTFS) file system security most of the rights in System.Security.AccessControl.FileSystemRights
are pretty clear to me.
However, FileSystemRights.Synchronize
is an exception. From the documentation:
Specifies whether the application can wait for a file handle to synchronize with the completion of an I/O operation.
Or as someone else explains it:
The Synchronize permission allows or denies different threads to wait on the handle for the file or folder and synchronize with another thread that may signal it. This permission applies only to multiple-threaded, multiple-process programs.
So my questions are:
Upvotes: 6
Views: 7633
Reputation: 1
@js2010 not using regular/simple deny rights W & D with icacls, but the "other ones" seems to do the job (ie not denying Synchronize right at the same time (ie render directory not accessible at all)) : icacls.exe "$DIR" /deny *S-1-1-0:(OI)(CI)(WEA,WA,DC,AD,WD,WDAC,DE) #HTH (my reputation is not strong enough just to comment your comment)
Upvotes: 0
Reputation:
To answer my own questions after doing some research:
[Synchronize] Allows or denies different threads to wait on the handle for the file or folder and synchronize with another thread that may signal it. This permission applies only to multithreaded, multiprocess programs.
These are the coarse permissions you can set in the permissions dialog and the FileSystemRights they include:
These are the granular permissions you can set in the advanced permissions dialog and the FileSystemRights they include:
Note that there are a few FileSystemRights that include other rights because of their bit mask. Those correspond to the rights you can set in the coarse permissions dialog. The FileSystemRights value and the other values they include:
There are also a few FileSystemRights that share the same value and are used interchangeably. They are:
Upvotes: 9