web-dev-qa-db-fra.com

Comment puis-je vérifier les machines que je suis connectées dans un domaine?

Je me trouve souvent dans de multiples machines et que vous avez le temps de connexion, ce qui me permet d'être connecté. J'oublie ensuite de l'endroit où je suis allé et mon compte reste connecté, bloquant d'autres utilisateurs d'accéder à ces machines.

Existe-t-il un moyen d'interroger un utilisateur sur un domaine et de répertorier toutes les machines que l'utilisateur est connecté?

5
Sio

Vous pouvez utiliser PowerShell pour rechercher où votre utilisateur est connecté. Vous aurez besoin de ces câbles CMDlets Active Directory:

# Import the Active Directory module for the Get-ADComputer CmdLet
Import-Module ActiveDirectory

# Query Active Directory for computers running a Server operating system
$Servers = Get-ADComputer -Filter {OperatingSystem -like "*server*"}

# Loop through the list to query each server for login sessions
ForEach ($Server in $Servers) {
    $ServerName = $Server.Name

    # When running interactively, uncomment the Write-Host line below to show which server is being queried
    # Write-Host "Querying $ServerName"

    # Run the qwinsta.exe and parse the output
    $queryResults = (qwinsta /server:$ServerName | foreach { (($_.trim() -replace "\s+",","))} | ConvertFrom-Csv) 

    # Pull the session information from each instance
    ForEach ($queryResult in $queryResults) {
        $RDPUser = $queryResult.USERNAME
        $sessionType = $queryResult.SESSIONNAME

        # We only want to display where a "person" is logged in. Otherwise unused sessions show up as USERNAME as a number
        If (($RDPUser -match "[a-z]") -and ($RDPUser -ne $NULL)) { 
            # When running interactively, uncomment the Write-Host line below to show the output to screen
            # Write-Host $ServerName logged in by $RDPUser on $sessionType
            $SessionList = $SessionList + "`n`n" + $ServerName + " logged in by " + $RDPUser + " on " + $sessionType
        }
    }
}


# When running interactively, uncomment the Write-Host line below to see the full list on screen
$SessionList

Vous aurez juste besoin de modifier cela pour votre situation. (c'est-à-dire des ordinateurs et des serveurs, pas seulement des serveurs)

4
colealtdelete

Existe-t-il un moyen d'interroger un utilisateur sur un domaine et de répertorier toutes les machines que l'utilisateur est connecté?

Non, ce n'est pas comme ça que ça marche; Il n'y a rien de tel qu'un attribut ~ IsLoggedOnTo qui attache à l'objet utilisateur en annonce. La liste des utilisateurs enregistrés est une propriété/attribut de chaque ordinateur individuellement, vous devez donc interroger chaque ordinateur individuellement.

J'utiliserais [probablement] utiliser PowerShell et le responsable TS Manager/Demote Desktop Services MMC Snap-in pour la figure ... S'il n'y avait pas beaucoup plus facile pour vous souvenir ou obtenir dans l'habitude de se déconnecter, plutôt que de fermer mes fenêtres RDP.

3
HopelessN00b