명령 줄에서 추가 된 NTFS 권한으로 보호 된 루트 폴더 생성

폴더 당 숫자가있는 읽기 전용 및 읽기 쓰기의 두 가지 유형의 그룹이 있습니다.

GROUP1_RO
GROUP1_RW
GROUP2_RO
GROUP2_RW
(...)

그런 디렉토리 트리를 만들고 싶습니다.

SHARE
|-MAIN_FOLDER1
| |-SUBFOLDERS
| |-FILES
|
|-MAIN_FOLDER2
| |-SUBFOLDERS
| |-FILES
|
|-MAIN_FOLDER3
(...)

모든 그룹은 자신의 MAIN_FOLDER *에 액세스 할 수 있으며 그룹 _RO는 파일을 읽을 수만 있지만 _RW는 폴더를 만들고 폴더와 파일을 삭제할 수 있습니다.

이 _RW 사용자가 MAIN_FOLDERS *가 실수로 삭제되는 것을 방지하고 싶습니다.

주요 목표는이 폴더를 정확한 권한으로 하나씩 준비하는 배치 / cli 명령 세트를 작성하는 것입니다.

icacls 로이 작업을 시도했지만 여러 권한 (잘못된 매개 변수)에 문제가 있습니다.

이러한 권한을 설정하여 수동 으로이 작업을 수행했습니다.

    a) Enter Properties > Security > Advanced > Edit...
    b) Uncheck "Include inheritable permissions from this object's parent" and choose "Remove"
    c) Add group GROUP1_RO ( RO ) and set permissions:

            + Allow (( This Folder, subfolders and files ))

            * Traverse Folder / execute file
            * List folder / read data
            * Read attributes
            * Read extendet attributes
            * Read permissions

            - Deny

            * Delete

    e) Add group GROUP1_RW ( RW ) and set permissions:

            + Allow (( This Folder, subfolders and files ))

            * Full control
            - uncheck Take ownership

            - Deny

            * Delete

그러나 많은 하위 폴더에 대해이 모든 것을 수동으로 설정하는 것은 고통 스럽습니다. 다른 그룹으로 icacls (또는 다른 것)에 의해 이것을 설정하는 방법이 있습니까?

감사합니다, 마이크



답변

어쩌면 나는 두 가지 방법으로 이것을 할 수 있었다.

I) 상속 :

mkdir MAIN_FOLDER1
icacls MAIN_FOLDER1 /inheritance:d
icacls MAIN_FOLDER1 /remove Everyone
icacls MAIN_FOLDER1 /grant GROUP1_RO:(OI)(CI)(RX)
icacls MAIN_FOLDER1 /grant GROUP1_RW:(OI)(CI)(RX,W,WDAC,DC)
icacls MAIN_FOLDER1 /deny GROUP1_RW:(OI)(CI)(DE)

II) 상속없이 :

mkdir MAIN_FOLDER1
icacls MAIN_FOLDER1 /inheritance:r
icacls MAIN_FOLDER1 /grant "DOMAIN\Domain Admins":(OI)(CI)(F)
icacls MAIN_FOLDER1 /grant "BUILTIN\Administrators":(CI)(F)
icacls MAIN_FOLDER1 /grant GROUP1_RO:(OI)(CI)(RX)
icacls MAIN_FOLDER1 /grant GROUP1_RW:(OI)(CI)(RX,W,WDAC,DC)
icacls MAIN_FOLDER1 /deny GROUP1_RW:(OI)(CI)(DE)

그리고 그 행동을 반복합니다.


답변