В AD у нас есть настройка Home Directory, и она указывает на файловый сервер, в котором находится папка [username]. Я хотел бы знать, кто подключается к этим домашним каталогам по имени компьютера с помощью Powershell.
Я ввожу person [username], и он покажет, какие компьютеры подключены к этой папке.
Я посмотрел вокруг в Get-ADuser, но ничего не нашел и попытался найти команды, но я мог искать это неправильно.
Спасибо
[EDIT01]
Я обнаружил, что Get-WmiObject Win32_serverConnection
возвращает тех, кто подключен к HomeDirectory
используя имя пользователя USERNAME. Я использую следующую команду:
Get-WmiObject Win32_ServerConnection -ComputerName SERVER | where username -match "USER" | where sharename -like "home" | select username, sharename, computername | sort sharename | Format-Table -AutoSize
Что возвращает отформатированную таблицу следующим образом:
username sharename computername
-------- --------- ------------
USER home 123.456.789.01
USER home 123.456.789.02
Теперь единственная проблема, которая у меня есть, это не возвращение имени ComputerName
а IP-адрес. Я могу вручную nslookup, и он вернет ComputerName
обратно, но КАК интегрировать это в эту командную строку?
[EDIT02]
Что я сделал, так это то, что я помещаю IP-адрес в массив, а затем выполняю foreach
используя следующую командную строку:
([System.Net.DNS]::GetHostByAddress($ipaddress)).HostName
Что возвращает имена компьютеров.