Cómo Obtener la Ruta de la Unidad Organizativa (OU) de un Equipo desde el Registro de Windows con PowerShell

Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero

En entornos corporativos que utilizan Active Directory (AD), es habitual que los administradores necesiten conocer la unidad organizativa (OU) a la que pertenece un equipo. Esta información resulta útil para aplicar directivas de grupo, organizar dispositivos o auditar la infraestructura.

Gracias a PowerShell y a una clave del registro de Windows, es posible acceder a esta información sin depender de herramientas externas.

1. Obtener el Distinguished Name (DN) del equipo

El primer paso es extraer el valor Distinguished-Name desde el registro de Windows. Este valor indica la ubicación completa del equipo en la jerarquía de Active Directory:

(Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine")."Distinguished-Name"

Este comando suele devolver una cadena como:

CN=EQUIPO01,OU=TI,OU=Departamentos,DC=empresa,DC=local

2. Dividir el DN por componentes

Para trabajar mejor con la información, podemos dividir la cadena del DN en sus partes separadas por comas, eliminando espacios innecesarios:

(Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine")."Distinguished-Name" -split ',' | ForEach-Object { $_.Trim() }

Este comando produce una lista como esta:

CN=EQUIPO01
OU=TI
OU=Departamentos
DC=empresa
DC=local

3. Filtrar solo las OUs

Si solo nos interesan las unidades organizativas, podemos aplicar un filtro para conservar únicamente los elementos que comienzan por OU=:

(Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine")."Distinguished-Name" -split ',' | Where-Object { $_ -like 'OU=*' } | ForEach-Object { $_.Trim() }

Este comando devuelve:

OU=TI
OU=Departamentos

Esto es útil si queremos ver la jerarquía de OUs sin el resto de los componentes del DN.

4. Obtener las OUs en una sola línea

Por último, si queremos unir los valores OU en una sola línea separada por comas, por ejemplo para generar informes:

(((Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine")."Distinguished-Name" -split ',') | Where-Object { $_ -like 'OU=*' } | ForEach-Object { $_.Trim() }) -join ','

Resultado:

OU=TI,OU=Departamentos

Conclusión

Estos comandos de PowerShell permiten extraer de forma precisa y eficiente la ubicación de un equipo dentro del árbol de Active Directory, directamente desde su registro local. Esta técnica es especialmente útil para tareas de administración, automatización de inventarios y validaciones de configuración sin necesidad de hacer consultas directas al controlador de dominio.

Binario 0
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.