Windows: angemeldete Benutzerer auslesen: Unterschied zwischen den Versionen

Aus MyWiki
Zur Navigation springen Zur Suche springen
Die Seite wurde neu angelegt: „Get-WmiObject Win32_ComputerSystem -ComputerName <COMPUTERNAME> | Select-Object Name,UserName“
 
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
Get-WmiObject Win32_ComputerSystem -ComputerName <COMPUTERNAME> | Select-Object Name,UserName
Man kann die angemeldeten Benutzer anhand der Registry auslesen.<br>
Von allen Benutzern die angemeldet sind, wird unter HKEY_USERS die Registry mit der SID geladen. <br>
im meinem Fall hole ich mir den Benutzernamen aus der Umgebungsvariable GIT_AUTHOR_NAME die per GPO gesetzt wird.<br>
 
 
  $computers = @("pc01","pc02")
  foreach ($computer in $computers)
  {
        write-host "gehe zu $computer" -ForegroundColor yellow
        invoke-command -ComputerName "$computer" -ScriptBlock {
                $noOutput = New-PSDrive HKU Registry HKEY_USERS
                Set-Location HKU:
                Get-ChildItem -Path HKU: | where {$_.Name.Length -gt 25 -and $_.Name -notlike "*Classes"} | % {$Path = $_.Name + "\Environment"; Get-ItemProperty -Path $Path | select GIT_AUTHOR_NAME | where GIT_AUTHOR_NAME -ne $ull}
        }
    }
 
 
Alternativ kann man folgendes versuchen, aber das hat nicht auf allen Rechnern sauber funktioniert<br>
    Get-WmiObject Win32_ComputerSystem -ComputerName <COMPUTERNAME> | Select-Object Name,UserName

Version vom 26. Februar 2016, 12:18 Uhr

Man kann die angemeldeten Benutzer anhand der Registry auslesen.
Von allen Benutzern die angemeldet sind, wird unter HKEY_USERS die Registry mit der SID geladen.
im meinem Fall hole ich mir den Benutzernamen aus der Umgebungsvariable GIT_AUTHOR_NAME die per GPO gesetzt wird.


  $computers = @("pc01","pc02")
  foreach ($computer in $computers)
  {
       write-host "gehe zu $computer" -ForegroundColor yellow
       invoke-command -ComputerName "$computer" -ScriptBlock {
               $noOutput = New-PSDrive HKU Registry HKEY_USERS
               Set-Location HKU:
               Get-ChildItem -Path HKU: | where {$_.Name.Length -gt 25 -and $_.Name -notlike "*Classes"} | % {$Path = $_.Name + "\Environment"; Get-ItemProperty -Path $Path | select GIT_AUTHOR_NAME | where GIT_AUTHOR_NAME -ne $ull}	
       }
   }


Alternativ kann man folgendes versuchen, aber das hat nicht auf allen Rechnern sauber funktioniert

   Get-WmiObject Win32_ComputerSystem -ComputerName <COMPUTERNAME> | Select-Object Name,UserName