Muchas veces necesitamos hacer un script que obtenga información del usuario que ha iniciado la sesión. En PowerShell, lo podemos hacer de varias maneras y quizás una de las más fáciles es la siguiente:
$usuario = $env:username
$consulta = "(&(objectCategory=User)(samAccountName=$usuario))"
$objSearcher = New-Object System.DirectoryServices.DirectorySearcher
$objSearcher.Filter = $consulta
$informacion = $objSearcher.FindOne()
El nombre del usuario que ha iniciado la sesión se almacena en la variable de entorno username. La leemos de la unidad de las variables de entorno (env:) y buscamos el objeto correspondiente en el Directorio Activo. Una vez realizada la consulta, tenemos toda la información en el objeto $informacion. Podemos hacer cosas como:
Ver todas las propiedades:
$informacion.Properties
Acceder a una de ellas (por ejemplo, el nombre completo):
$informacion.Properties.distinguishedname
Suele ser habitual, consultar los grupos a los que pertenece el usuario:
$informacion.Properties.memberof
No hay comentarios:
Publicar un comentario