Buscar

Active Directory: Mostrar todas las propiedades de un usuario con PowerShell

Con el siguiente cmd-let podemos ver todas las propiedades de un usuario (Xavi) de Active Directory:

Get-AdUser Xavi -Properties *|more

Ejemplo de ejecución sobre un DC con Windows Server 2012:

Active Directory: Mostrar todas las propiedades de un usuario con PowerShell


Siguiente página:

Active Directory: Mostrar todas las propiedades de un usuario con PowerShell

Siguiente página:

Active Directory: Mostrar todas las propiedades de un usuario con PowerShell

Con todas las propiedades podemos realizar filtros.

Algunos ejemplos:

1) Teléfono de la oficina del usuario Xavi.

Get-AdUser Xavi -Properties OfficePhone

2) Teléfono de la oficina y código postal de todos los usuarios.

Get-AdUser -Filter * -Properties OfficePhone, PostalCode



14 comentarios:

  1. Hola Buenas Tarde,

    Este Script me lista los usuario y sus propiedades, pero necesito tambien por cada usuario se muestre el grupo al que perteneces
    Con lo que expongo a continuación es lo que quiero obtener;
    SamAccountName DisplayName Status (enable) LastLoginDate WhenCreated MemberOf
    Pperez Pedro I. Perez E. True 24/10/2016 15/01/2016 Domain Admin
    Pperez Pedro I. Perez E. True 24/10/2016 15/01/2016 Administrators
    Pperez Pedro I. Perez E. True 24/10/2016 15/01/2016 Remote Control
    )
    JCSuarez Julio Cesar Suarez False 2/12/2013 15/01/2010 Domain Admin
    JCSuarez Julio Cesar Suarez False 2/12/2013 15/01/2010 Administrators
    JCSuarez Julio Cesar Suarez False 2/12/2013 15/01/2010 Remote Control

    Con este resultado sabre quien esta activo quien no y a que grupo pertenece, que es lo mas importante

    Agradezco de antemano de tu gran apoyo

    Saludos

    ResponderEliminar
  2. Hola,

    Si quieres saber si un usuario pertenece a un grupo de seguridad o no, aquí tienes otro método para controlarlo:

    http://www.sysadmit.com/2013/11/script-para-realizar-mapa-de-red-segun.html

    Un saludo,

    Xavi.

    ResponderEliminar
  3. muchas gracias estimado , justo lo que estaba buscando.
    saludos desde bolivia

    ResponderEliminar
    Respuestas
    1. Gracias, me alegro que te haya servido.

      ¡Un saludo!

      Xavi.

      Eliminar
  4. Hola, buen material, tengo mi siguiente consulta... como puedo agregar por powershell datos a un atributo en userparameters? en esto necesito agregar numero identificador a cada usuario.

    ResponderEliminar
    Respuestas
    1. Con el cmd-let: Set-Aduser, puedes cambiar valores en los atributos.

      Ejemplo:

      Set-Aduser xavi.sysadmit –replace @{atributo1="Hola"}

      Puedes usar los parámetros:

      –add
      -replace
      –remove

      ¡Un saludo!

      Xavi.

      Eliminar
  5. hola y si como ver quien creo la cuenta del usuario, que cuenta creo dicha cuenta.

    ResponderEliminar
    Respuestas
    1. Hola Edgardo,

      Si quieres saber el usuario que ha creado o eliminado alguna cuenta tienes que habilitar primero la auditoría de cuentas.

      Aquí tienes un enlace donde explica paso a paso como hacerlo y ver el detalle de quien ha creado o eliminado una cuenta:

      https://blogs.technet.microsoft.com/abizerh/2010/05/27/tracing-down-user-and-computer-account-deletion-in-active-directory/

      ¡Un saludo!

      Xavi.

      Eliminar
  6. Hola me podrian colaborar, necesito comando que me traiga el Usuario pero solo con el SID y si es posible que me lo exporte a un CSV

    ResponderEliminar
    Respuestas
    1. Hola Kevin,

      Si ejecutas:

      Get-AdUser -Filter * |select-object Name, SID

      Conseguirás un listado de todos los nombres y SIDs de Active Directory.

      Si quieres exportar la salida a CSV, bastará con ejecutar:

      Get-AdUser -Filter * |select-object Name, SID| Export-Csv c:\SYSADMIT\User-SID.txt

      Substituye la ruta y fichero de Export-Csv por la que quieras.

      Un saludo,

      Xavi.

      Eliminar
  7. Clear-Host #Extrae archivos de usuario segun sus propiedades
    $Error.Clear()
    #Ruta del fichero CSV a generar
    #$CSV = "D:\Grupos\Users_AD_CO.csv"

    If (Test-Path $CSV)
    {
    Remove-Item $CSV
    }

    Import-Module Activedirectory
    $Users = (Get-ADUser -Filter * -properties * | Select-Object SamAccountName,DisplayName,EmployeeID,LastLogonDate,WhenCreated,whenChanged,enabled,CanonicalName,DistinguishedName )

    $Table = @()

    $Record = @{
    "SamAccountName" = ""
    "DisplayName" = ""
    "EmployeeID" = ""
    "LastLogonDate" = ""
    "whenChanged" = ""
    "WhenCreated" = ""
    "Status" = ""
    "CanonicalName" = ""
    "DistinguishedName"
    }

    Foreach ($User in $Users)
    {
    $Record."DisplayName" = $User.DisplayName
    $Record."SamAccountNAme" = $User.SamAccountName
    $Record."EmployeeID" = $User.EmployeeID
    $Record."LastLogonDate" = $User.LastLogonDate
    $Record."WhenCreated" = $User.WhenCreated
    $Record."WhenChanged" = $User.WhenChanged
    $Record."Status" = $User.Enabled
    $Record."CanonicalName" = $User.CanonicalName
    $Record."DistinguishedName" = $User.DistinguishedName

    $objRecord = New-Object PSObject -property $Record
    $Table += $objrecord

    } $Table | Export-Csv $CSV -append
    {
    Write-Error $Error[0].Exception.Message
    }

    ResponderEliminar
    Respuestas
    1. ¡Muchas gracias por tu aporte!

      Un saludo,

      Xavi.

      Eliminar
  8. Excelente aporte, justo lo que buscaba Codigo Postal y Teléfono oficina!
    Gracias por tu aporte!

    ResponderEliminar
    Respuestas
    1. Muchas gracias. Me alegro que te haya resultado útil.

      Un saludo,

      Xavi.

      Eliminar