PowerShellを使用してTrustEdInStallerが所有するファイルに監査コントロールを設定するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/19842666

質問

私は多くのファイルに監査制御を設定しようとしています(にリストされています 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を使用してこれらの監査制御を設定しますか?

役に立ちましたか?

解決

Administrative Command-line(管理者として実行)から:

テイクダウン /f "filename" /a

ファイルの所有権を管理者グループに提供し、スクリプトを実行できるようにします。

また、ファイルの所有権を与えた後、ICACLSコマンドを使用して管理者グループのアクセス許可を追加または変更する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top