我一直在研究如何在网络计算机上找到SID的位置,但到目前为止还没有。
我需要搜索我们的网络,并查询所有PC查找是否存在特定SID,并向我提供出现此用户SID的结果PC。
任何想法,因为我画了一个空白。
答案 0 :(得分:0)
试试这个。获取用户名,转换为SID,然后在域中搜索注册表中该SID的所有计算机(用户必须登录,否则注册表项不存在)。
$User = "Username"
$SID = Get-ADUser -Identity $User | Select -ExpandProperty SID
$ComputerList = Get-ADComputer -Filter * | Select -ExpandProperty DNSHostName
foreach ($Computer in $ComputerList){
if (Test-Connection -ComputerName $Computer -Quiet -Count 1) {
$Reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('Users', $Computer)
if ($Reg.OpenSubKey("$SID")) {
Write-Output "$User found on $Computer."
}
else {
Write-Output "$User not found on $Computer."
}
}
else {
Write-Output "$Computer unreachable."
}
}