В 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

Что возвращает имена компьютеров.

1 ответ1

0
Get-ADUser -SearchBase "OU=Path,OU=To,OU=OrgUnit,DC=domain,DC=com" -Filter {HomeDirectory -like 'C:\*'} -Properties HomeDirectory

Используйте -filter и параметры -Properties включить HomeDirectory недвижимость. Настройте {HomeDirectory -like 'C:\*'} к вашему действительному местоположению, то же самое для параметра -SearchBase .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .