Script di PowerShell per tracciare l'accesso alla directory dell'utente


0

Conosco FileWatcher in Windows ma c'è un modo per tenere traccia anche se un utente inserisce solo una directory? Ho appena trovato il codice per l'apertura, la modifica e l'eliminazione dei file.

$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "C:\inetpub"
$watcher.Filter = "*.*"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true  

$action = { $path = $Event.SourceEventArgs.FullPath
            $changeType = $Event.SourceEventArgs.ChangeType
            $logline = "$(Get-Date), $changeType, $path"
            Add-content "C:\log.txt" -value $logline
          }    

Register-ObjectEvent $watcher "Created" -Action $action
Register-ObjectEvent $watcher "Changed" -Action $action
Register-ObjectEvent $watcher "Deleted" -Action $action
Register-ObjectEvent $watcher "Renamed" -Action $action

while ($true) {sleep 5}

Cosa significa "inserisci una directory"? E presumo che tu sia a conoscenza del controllo della sicurezza dei file?
Bill_Stewart


$watcher.NotifyFilter predefinito FileName, DirectoryName, LastWrite per me. Dai un'occhiata [System.IO.NotifyFilters].GetEnumValues(), prova almeno $watcher.NotifyFilter = $watcher.NotifyFilter -bOR [System.IO.NotifyFilters]::LastAccess. Dai un'occhiata $watcher | Get-Member -MemberType Event, prova a registrare tutti i tipi di eventi.
JosefZ
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.