En entornos Active Directory con múltiples dominios o subdominios, puede ser necesario obtener un listado completo de todas las Directivas de Grupo (GPOs) definidas en uno de ellos. PowerShell, mediante el módulo GroupPolicy
, permite realizar esta tarea de forma rápida, precisa y exportable.
A continuación, se explica paso a paso cómo listar, filtrar y exportar las GPOs de cualquier dominio o subdominio dentro de tu infraestructura de Active Directory.
Requisitos previos
Antes de ejecutar los comandos, asegúrate de lo siguiente:
- Tener permisos de lectura sobre el dominio o subdominio objetivo.
- Tener instalado el módulo
GroupPolicy
. Este suele estar disponible en estaciones de trabajo con las RSAT (Remote Server Administration Tools) o en controladores de dominio.
Puedes comprobar si el módulo está disponible con:
Get-Module -ListAvailable GroupPolicy
Listar todas las GPOs de un dominio o subdominio
Para obtener todas las GPOs definidas en un dominio o subdominio concreto, usa el parámetro -Domain
con Get-GPO
:
Get-GPO -All -Domain "nombre.dominio.com"
Por ejemplo:
Get-GPO -All -Domain "soporte.empresa.local"
Esto devolverá todas las políticas definidas en el dominio indicado.
Mostrar solo los nombres visibles (DisplayName) de las GPOs
Si solo te interesa ver el nombre de cada GPO (atributo DisplayName
), puedes filtrar la salida:
Get-GPO -All -Domain "nombre.dominio.com" | Select-Object DisplayName
Si prefieres una lista limpia de nombres, sin formato de tabla, puedes expandir directamente la propiedad:
Get-GPO -All -Domain "nombre.dominio.com" | Select-Object -ExpandProperty DisplayName
Esto es ideal para una visualización rápida o cuando quieras copiar y pegar la lista.
Exportar los nombres de las GPOs a un archivo CSV
Para guardar los nombres de las GPOs en un archivo CSV, por ejemplo en C:\GPO_Exports\GPO_List.csv
, usa:
Get-GPO -All -Domain "nombre.dominio.com" |
Select-Object DisplayName |
Export-Csv "C:\GPO_Exports\GPO_List.csv" -NoTypeInformation
Este comando generará un archivo con una sola columna llamada DisplayName
.
Mostrar en pantalla y exportar al mismo tiempo
Si deseas ver en pantalla los nombres de las GPOs y exportarlos a la vez, usa una variable intermedia:
$gpos = Get-GPO -All -Domain "nombre.dominio.com"
$gpos | Select-Object DisplayName | Export-Csv "C:\GPO_Exports\GPO_List.csv" -NoTypeInformation
$gpos | Select-Object DisplayName
De esta forma, podrás validar visualmente el resultado sin renunciar al archivo exportado.
Conclusión
PowerShell proporciona una forma eficiente de obtener la lista de GPOs de cualquier dominio o subdominio. Gracias a parámetros como -Domain
y herramientas como Select-Object
y Export-Csv
, puedes adaptar la información a tus necesidades, ya sea para auditoría, documentación o automatización.
¿Necesitas además filtrar por tipo de GPO, fecha de modificación o vinculación? También se puede hacer. Si lo necesitas, ¡puedo ayudarte a dar ese siguiente paso!