보안 설명자 편집기 (폴더의 속성에 대한 보안 탭에서 가져온보기). 즉, ACL 편집기는 사용자를 도와주고 작업하기 쉬운 형식으로 정보를 표시하려고합니다. 모든 Windows 시스템에서 작동합니다 간단한 예는 실제 Windows 폴더를 확인한다 (당신이 볼 수 실제로 여러 폴더와 레지스트리 키가) : 당신이 그 출력에 그 결과를 비교하면
PS> Get-Acl C:\Windows | select -exp access | Format-Table
FileSystemRights AccessControlType IdentityReference IsInherited InheritanceFlags Propagation
Flags
---------------- ----------------- ----------------- ----------- ---------------- -----------
268435456 Allow CREATOR OWNER False ContainerInherit, ObjectInherit InheritOnly
268435456 Allow NT AUTHORITY\SYSTEM False ContainerInherit, ObjectInherit InheritOnly
Modify, Synchronize Allow NT AUTHORITY\SYSTEM False None None
268435456 Allow BUILTIN\Administrators False ContainerInherit, ObjectInherit InheritOnly
Modify, Synchronize Allow BUILTIN\Administrators False None None
-1610612736 Allow BUILTIN\Users False ContainerInherit, ObjectInherit InheritOnly
ReadAndExecute, Synchronize Allow BUILTIN\Users False None None
268435456 Allow NT SERVICE\TrustedInstaller False ContainerInherit InheritOnly
FullControl Allow NT SERVICE\TrustedInstaller False None None
ReadAndExecute, Synchronize Allow APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES False None None
-1610612736 Allow APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES False ContainerInherit, ObjectInherit InheritOnly
은 ACL Editor는 ACE의 수가 일치하지 않음을 알 수 있습니다. 예를 들어, Get-Acl의 출력이 보여주는 두 개의 항목 대신 'Users'에 대한 항목이 하나 있어야합니다. 친숙한 텍스트 권한과 함께 일부 숫자 권한이있는 위의 방법에 유의하십시오. 이를 일반 권한이라고하며, 읽기, 실행, 쓰기, 모두의 네 가지 권한 집합을 정의하는 바로 가기입니다. 그것들은 ACE가 속한 객체의 유형, 즉 파일/폴더, 레지스트리 키, 서비스, 프린터, AD 객체 등에 따라 다르게 번역되기 때문에 지름길이지만이 네 가지 비트를 사용하여 기본적으로 설명 할 수 있습니다 각 유형의 객체에 대해 동일한 작업을 수행합니다.
어쨌든 ACL 편집기는 일반 권한을 개체 별 권한으로 변환하고 논리적으로 함께 그룹화 할 수있는 ACE가 있는지 확인합니다. 예를 들어 봅시다.
FileSystemRights에 일반적인 권리 번역
IdentityReference FileSystemRights InheritanceFlags PropagationFlags
----------------- ---------------- ---------------- ----------------
BUILTIN\Users -1610612736 ContainerInherit, ObjectInherit InheritOnly
BUILTIN\Users ReadAndExecute, Synchronize None None
에서, -1610612736
값이 ReadAndExecute, Synchronize
을 의미한다 : 위의 출력에서 '사용자'에 대한 두 개의 에이스 있었다. 변환이 완료되면 Type (Allow), IdentityReference (BUILTIN \ Users) 및 FileSystemRights (ReadAndExecute, Synchronize)에서 두 ACE가 일치하는 것을 확인하십시오. 일치하지 않는 유일한 것은 InheritanceFlags 및 PropagationFlags입니다. 첫 번째 파일에는 ContainerInherit, ObjectInherit
상속 플래그가 있습니다. ACE는 하위 폴더 및 파일에 적용되고 InheritOnly
전파 플래그는 ACE가 폴더 자체에 적용되지 않음을 의미합니다. 두 번째 ACE에는 상속 또는 전파 플래그가 없으므로 폴더 자체에만 적용됩니다. 즉, 폴더, 하위 폴더 및 파일에 적용 할 ReadAndExecute
에서 Users
까지 부여하는 단일 ACE로 논리적으로 결합 할 수 있습니다.
그럼 정상 일 것입니다. Access 속성에서 원시 출력을 확인해야합니다.
here 모듈을 사용하면 ACL 편집기의 방식대로 정보를 표시하려고합니다. 여기에 출력 C에 대한 생겼는지 : \ WINDOWS :
PS> Get-AccessControlEntry C:\Windows
DisplayName : C:\Windows
Owner : NT SERVICE\TrustedInstaller
DACL Inheritance : Disabled
AceType Principal AccessMask InheritedFrom AppliesTo
------- --------- ---------- ------------- ---------
AccessAllowed CREATOR OWNER FullControl <not inherited> CC CO
AccessAllowed SYSTEM FullControl <not inherited> CC CO
AccessAllowed SYSTEM Modify, Synchronize <not inherited> O
AccessAllowed Administrators FullControl <not inherited> CC CO
AccessAllowed Administrators Modify, Synchronize <not inherited> O
AccessAllowed Users ReadAndExecute, Synchronize <not inherited> O CC CO
AccessAllowed NT SERVICE\TrustedInstaller FullControl <not inherited> O CC
AccessAllowed APPLICATION PACKAGE ReadAndExecute, Synchronize <not inherited> O CC CO
AUTHORITY\ALL APPLICATION
PACKAGES
을 다운로드 할 수있어 현재 버전하지 않습니다 항상 논리적으로 그룹의 ACE 그들은 (그룹화 할 수 있습니다 때됩니다에 동일하지 그룹의 ACE 'AppliesTo'영역에 권한이 결합 될 수 있음). 미래 버전에서 찾아보십시오.
'ft' cmdlet을 사용하여 답변을 필터링하는 것으로 추측됩니다. 이 명령을 실행하고 출력을보십시오 :'et-acl '\\ Testserver \ test'| % {$ _. access}'그들에 대해 뭔가 다른 점이 있습니다. – Matt