Windows 2003; 상속되지 않은 / 변경된 권한이있는 폴더 찾기 Windows 2003 파일

질문 : 디렉토리 구조를 감사 / 검색하고 (Windows 2003) 부모의 권한을 상속받지 않거나 추가 사용자 / 그룹을 추가하는 폴더를 찾는 좋은 방법을 찾고 있습니다.

뒷이야기

기존 Windows 2003 파일 서버를 2008 R2 상자로 마이그레이션하고 있습니다. 이 이전 서버는 NT4에서 마이그레이션되었습니다. 현재 폴더의 대부분은 이전 (더 이상 사용되지 않습니까?) Domain \ Administrators 및 Domain \ Users 그룹을 사용합니다. 이들은 AD에있는 동안 2008 R2 권한의 권한에 사용할 수없는 그룹입니다.

따라서 이전 서버에서 새 서버로 모든 공유 데이터를 로보 코피하기 전에 먼저 이전 공유에 대한 권한을 “현대화”해야합니다. 그러나 지난 수십 년 동안 일부 [언급되지 않은] 폴더는 부모로부터 상속받지 않거나 추가 사용자를 추가하기 위해 권한이 수정되었습니다. 따라서 그들을 찾는 방법에 대한 나의 탐구!



답변

Powershell (Win2003 : http://support.microsoft.com/kb/968929/en-us )과 추가 애드온 모듈 ( http://gallery.technet.microsoft.com ) 을 사용하는 것이 좋습니다. / scriptcenter / 1abd77a5-9c0b-4a2b-acef-90dbb2b84e85 ).

이것은 (startfolder에서 실행할 때) 폴더 구조에 대한 상속을 먼저 ​​얻는 데 도움이됩니다.

get-childitem -Recurse | get-inheritance | export-CSV C:\Inheritance.csv -NoTypeInformation

csv의 모든 파일과 폴더를 가져와 필요한 경우 Excel 또는 다른 DB에서 필터링 할 수 있습니다.

NTFSSecurity Modul의 추가 이점은 유사한 Powershell 스크립트를 사용하여 마이그레이션하는 동안 상속 또는 ACL을 변경할 수 있다는 것입니다.

예를 들어 다음을 사용하여 폴더 (시작 폴더)에서 상속을 완전히 제거 할 수 있습니다.

get-childitem | Disable-Inheritance

또는 모든 하위 폴더 / 파일에 대해 -recurse 스위치를 다시 추가하십시오.

이것이 도움이되기를 바랍니다.


답변

이것은 SetACL을 사용하면 매우 쉽습니다 . 다음과 같이 실행하십시오.

SetACL -on "some path" -ot file -actn list -lst f:csv -rec cont

이 명령은 SetACL에 상속이 활성화 된 디렉토리에 ACE가 추가되었거나 상속이 비활성화되고 새 ACE가 설정 되었기 때문에 명시적인 권한이 있는 개체에서만 권한을 인쇄하도록 지시 합니다.

SetACL은 260자를 초과하는 경로를 처리하고 현재 권한에 관계없이 모든 디렉토리에서 ACE를 나열합니다. 즉, 읽기 권한이없는 경우에도 SetACL은 현재 상태를 표시하고 권한을 인쇄합니다 (관리자 권한 필요).