No primeiro exemplo, vamos usar o Powershell para:

  • Listar todos os computadores de uma OU, para cada computador localizado iremos:
    • Consultar quem está logado neste computador e;
    • Gravar no AD o login da pessoa no campo extensionAttribute1 do próprio computador.
Get-ADComputer -filter * -SearchBase “CN=Computers,DC=dominio,DC=com,DC=br” | ForEach-Object {
$name = $_.name
Get-WmiObject -Class win32_computersystem -ComputerName “$name” | select username, name
$username = $_.username
}
set-aduser -Identity “USUARIO”-Replace @{extensionAttribute1=”COMPUTADOR”}

Uma segunda opção é executar durante o logon de cada usuário, para isso é necessário:

  • Uma credencial (usuário e senha) no Active Directory;
  • Sugerimos que este usuário não seja membro do grupo Domain User, inibindo que esta conta seja usada para entrar em computadores;
  • Que nesta credencial seja atribuída apenas a permissão de gravação no campo que será usado nos computadores;
  • Criar uma GPO e atribuir onde ficam os usuários do AD, nesta GPO executar o seguinte script de logon:
On Error Resume Next
Dim ldap_username, ldap_password, objSysInfo, openDS, strComputerDN, strUserDN, objUser, objComputer, objComputerDN, strDescr

‘ALTERE ESSAS VARIAVEIS
ldap_username = “usuario@dominio.com.br”
ldap_password = “senha

Set objSysInfo = CreateObject(“ADSystemInfo”)
Set objUser = GetObject(“LDAP://” & objSysInfo.UserName)
Set objComputerDN = GetObject(“LDAP://” & objSysInfo.ComputerName)
Const ADS_SECURE_AUTHENTICATION = 1
Set openDS = GetObject(“LDAP:”)
Set objComputer = openDS.OpenDSObject(“LDAP://” & objSysInfo.ComputerName,ldap_username, ldap_password,ADS_SECURE_AUTHENTICATION)
objComputer.description = “Usado por:” & objUser.userPrincipalName
objComputer.SetInfo

Mais Informações

Esperamos ter ajudado da melhor forma possível e estaremos sempre a disposição para mais informações.

Entre em contato conosco pelo e-mail equipe@nvlan.com.br.

NVLAN - Consultoria