# Determinación del Estado de Unión a Dominio en Equipos Windows mediante PowerShell

- Link: https://binariocero.com/windows/determinacion-del-estado-de-union-a-dominio-en-equipos-windows-mediante-powershell
- Published: 2025-06-15T22:12:00+02:00
- Author: Juan José Fernández Durán

![Loading](https://binariocero.com/wp-content/plugins/page-views-count/ajax-loader-
2x.gif)

En entornos corporativos, conocer si un equipo está unido a un dominio es una tarea
esencial para la administración, auditoría y aplicación de políticas de seguridad.
PowerShell, como herramienta de automatización y administración de sistemas, permite
realizar esta comprobación de manera rápida, eficiente y scriptable. Este artículo
describe los métodos recomendados para verificar la pertenencia de un equipo a un
dominio o grupo de trabajo en sistemas operativos Windows.

### Requisitos Previos

 * Windows PowerShell o PowerShell Core.
 * Permisos de lectura en el sistema local.
 * Acceso a una consola con ejecución de scripts habilitada (si se automatiza).

### Verificación Básica: Método Clásico con `Win32_ComputerSystem`

El cmdlet `Get-WmiObject` permite consultar clases WMI (Windows Management Instrumentation).
Una de ellas, `Win32_ComputerSystem`, contiene la propiedad `PartOfDomain`, que 
indica si el equipo está unido a un dominio.

    ```wp-block-preformatted
    (Get-WmiObject Win32_ComputerSystem).PartOfDomain
    ```

#### Resultado:

 * `True`: El equipo está unido a un dominio.
 * `False`: El equipo forma parte de un grupo de trabajo.

### Verificación Moderna: Uso de CIM

A partir de PowerShell 3.0, se recomienda el uso del cmdlet `Get-CimInstance`, que
ofrece una interfaz más moderna y robusta que WMI.

    ```wp-block-preformatted
    (Get-CimInstance Win32_ComputerSystem).PartOfDomain
    ```

El resultado es funcionalmente idéntico al método anterior, pero con mejor compatibilidad
con sistemas remotos y menor dependencia del subsistema DCOM.

### Obtener Detalles del Dominio o Grupo de Trabajo

Para obtener el nombre del dominio o grupo de trabajo al que pertenece el equipo:

    ```wp-block-preformatted
    $cs = Get-CimInstance Win32_ComputerSystemif ($cs.PartOfDomain) {    Write-Output "El equipo está unido al dominio: $($cs.Domain)"} else {    Write-Output "El equipo pertenece al grupo de trabajo: $($cs.Workgroup)"}
    ```

### Aplicación en Entornos de Administración Remota

En escenarios de administración de múltiples equipos, puede emplearse PowerShell
Remoting (mediante `Invoke-Command`) para obtener esta información de forma centralizada:

    ```wp-block-preformatted
    Invoke-Command -ComputerName "NombreDelEquipo" -ScriptBlock {    (Get-CimInstance Win32_ComputerSystem).PartOfDomain}
    ```

Se requiere que PowerShell Remoting esté habilitado en los equipos remotos y que
se disponga de credenciales adecuadas.

### Consideraciones de Seguridad

 * El acceso a información del sistema debe realizarse siguiendo políticas de privilegios
   mínimos.
 * Se recomienda el uso de conexiones seguras y cifradas en entornos de red.
 * El uso de `CIMSession` permite mejorar la trazabilidad y seguridad en entornos
   grandes.

### Conclusión

Determinar si un equipo está unido a un dominio es una tarea esencial para garantizar
la correcta aplicación de directivas de grupo, autenticación centralizada y cumplimiento
normativo. PowerShell ofrece una forma eficiente y estandarizada de realizar esta
verificación tanto a nivel local como remoto. La adopción de cmdlets modernos como`
Get-CimInstance` permite una mejor integración con prácticas actuales de administración
de sistemas.
