관리 명령줄에서(관리자 권한으로 실행):
게시 중단 /f "파일 이름" /A
파일의 소유권을 관리자 그룹에 부여하고 스크립트를 실행할 수 있도록 합니다.
또한 관리자 그룹에 파일 소유권을 부여한 후 icacls 명령을 사용하여 관리자 그룹에 대한 권한을 추가하거나 수정해야 할 수도 있습니다.
문제
여러 파일에 감사 제어를 설정하려고 합니다(다음에 나열되어 있음). ACLsWin.txt
) 에 위치한 \%Windows%\System32
(예를 들어, aaclient.dll
) 다음 Powershell 스크립트를 사용합니다.
$FileList = Get-Content ".\ACLsWin.txt"
$ACL = New-Object System.Security.AccessControl.FileSecurity
$AccessRule = New-Object System.Security.AccessControl.FileSystemAuditRule("Everyone", "Delete", "Failure")
$ACL.AddAuditRule($AccessRule)
foreach($File in $FileList)
{
Write-Host "Changing audit on $File"
$ACL | Set-Acl $File
}
스크립트를 실행할 때마다 오류가 발생합니다. PermissionDenied [Set-Acl] UnauthorizedAccessException
.
이는 이 파일의 소유자가 다음과 같다는 사실에서 비롯된 것 같습니다. TrustedInstaller
.기본 제공 관리자 계정을 사용하더라도 관리자로 이 스크립트를 실행하고 있는데 여전히 실패합니다.보안 탭을 사용하여 이러한 감사 제어를 직접 설정할 수 있지만 수동으로 수행하면 사람의 오류가 발생할 수 있는 파일이 200개 이상 있습니다.
어떻게 돌아다닐 수 있나요? TrustedInstaller
Powershell을 사용하여 이러한 감사 제어를 설정하시겠습니까?
해결책
관리 명령줄에서(관리자 권한으로 실행):
게시 중단 /f "파일 이름" /A
파일의 소유권을 관리자 그룹에 부여하고 스크립트를 실행할 수 있도록 합니다.
또한 관리자 그룹에 파일 소유권을 부여한 후 icacls 명령을 사용하여 관리자 그룹에 대한 권한을 추가하거나 수정해야 할 수도 있습니다.