===== Добавление объекту AD в поле "описание" полезной информации =====
Для удобства администрирования пользователей в AD можно добавить в поле "описание" компьютера или пользователя дополнительной полезной информации. В моем случае, добавление информации пользователю о компьютере и IP, в который он последний раз заходил. Ну и добавление информации компьютеру об его IP и последнем пользователе, который в него заходил.
Для начала надо разрешить пользователям домена заполнять "описание".
Для этого на домене или нужном подразделении правой кнопкой выбрать **//свойства - безопасность - дополнительно//** и там проставить следующие галочки.
Для добавление в "описание" пользователей\\
{{ :objects_description_ad_uc:descr_ad_uc1.jpg?nolink |}}
Для добавление в "описание" компьютеров\\
{{ :objects_description_ad_uc:descr_ad_uc2.jpg?nolink |}}
После этого создаем два скрипта **.vbs**
Для пользователей
Option Explicit
Dim objWMIService, objItem, colItems, osVersion, IPConfigSet, i
Dim strComputer, objSysInfo, objUser, objComputer, ips, IPConfig
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
Set IPConfigSet = objWMIService.ExecQuery ("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE")
For Each IPConfig in IPConfigSet
If Not IsNull(IPConfig.IPAddress) Then
For i = LBound(IPConfig.IPAddress) To UBound(IPConfig.IPAddress)
If Not Instr(IPConfig.IPAddress(i), ":")> 0 Then
ips = ips & IPConfig.IPAddress(i) & vbcrlf
End If
Next
End If
For Each objItem in colItems
osVersion = objItem.Caption
Next
if InStr(osVersion, "Server") Then
WSCript.Quit
Else
Set objSysInfo = CreateObject("ADSystemInfo")
Set objUser = GetObject("LDAP://" & objSysInfo.UserName)
Set objComputer = GetObject("LDAP://" & objSysInfo.ComputerName)
End If
Next
objUser.description = objComputer.cn + " " + ips
objUser.SetInfo
Для компьютера
Option Explicit
Dim objWMIService, objItem, colItems, osVersion, strMessage, strMessagePC, IPConfigSet, i
Dim strComputer, strList, objSysInfo, objUser, objComputer, ips, IPConfig
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
Set IPConfigSet = objWMIService.ExecQuery ("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE")
For Each IPConfig in IPConfigSet
If Not IsNull(IPConfig.IPAddress) Then
For i = LBound(IPConfig.IPAddress) To UBound(IPConfig.IPAddress)
If Not Instr(IPConfig.IPAddress(i), ":")> 0 Then
ips = ips & IPConfig.IPAddress(i) & vbcrlf
End If
Next
End If
For Each objItem in colItems
osVersion = objItem.Caption
Next
if InStr(osVersion, "Server") Then
WSCript.Quit
Else
Set objSysInfo = CreateObject("ADSystemInfo")
Set objUser = GetObject("LDAP://" & objSysInfo.UserName)
Set objComputer = GetObject("LDAP://" & objSysInfo.ComputerName)
End If
Next
strMessage = objUser.CN
objComputer.Description = strMessage + " " + ips
objComputer.SetInfo
Ну и потом просто добавить пользователям через "Управление групповой политикой" эти скрипты для выполнения при входе пользователя в компьютер.
И в итоге получим примерно такое в оснастке
{{ :objects_description_ad_uc:example.jpg?nolink |}}