Los profesionales de TI no están de acuerdo en muchas (y digo MUCHAS) cosas. Pero muchos —si no todos— coincidimos en que, cuando se trata de automatizar diversas tareas y flujos de trabajo, PowerShell suele ser útil y, en ocasiones, sencillamente impresionante. Y, seamos sinceros, si eso hace que nuestros colegas ajenos a TI piensen que somos poderosos magos con poderes secretos, ¿quiénes somos nosotros para llevarles la contraria?
En este artículo, analizamos algunas de las diferentes formas en que puede utilizar Remote Desktop Manager (RDM) para interactuar con PowerShell, como los distintos tipos de entradas, los eventos y el estupendo módulo de PowerShell.
Session y Macro/Script/Tool
RDM admite los siguientes tipos de entradas de PowerShell:
- PowerShell Session y PowerShell Remote Console Session, que abren sesiones independientes.
- PowerShell (Local) Macro/Script/Tool y PowerShell (Remote) Macro/Script/Tool, que se ejecutan sobre entradas ya existentes en RDM.
Las variables de RDM pueden utilizarse en el script o en los parámetros para inyectar los valores de la entrada. Veamos con más detalle estas opciones de tipos de entradas.

PowerShell Session
El tipo de entrada PowerShell ejecuta un script, una línea de comandos o un fichero que contiene un script de PowerShell. Abre una ventana de PowerShell y se integra con RDM. Puede invocar un script externo o integrar un script directamente en la sesión. Este tipo de sesión se ejecuta localmente en el equipo del usuario que la inicia.

PowerShell Remote Console Session
El tipo de entrada PowerShell Remote Console le permite abrir la consola de PowerShell de un equipo remoto mediante PSRemoting. Esto le permite ejecutar comandos directamente en dicho equipo. Tenga en cuenta también que este tipo de entrada requiere que WinRM esté correctamente configurado.

PowerShell (Local) Macro/Script/Tool
El tipo de entrada PowerShell (Local) Macro/Script/Tool le permite ejecutar comandos y scripts de PowerShell en el equipo donde está instalado RDM. Este tipo de entrada hereda los parámetros de una sesión existente, como una entrada RDP.

PowerShell (Remote) Macro/Script/Tool
El tipo de entrada PowerShell (Remote) Macro/Script/Tool le permite ejecutar comandos o scripts de PowerShell en un equipo remoto. De forma similar a la configuración local que acabamos de comentar, este tipo de entrada hereda los parámetros de una sesión existente. Tenga en cuenta que WinRM debe estar configurado adecuadamente, y que PSRemoting debe ser posible entre el equipo donde está instalado RDM y el host remoto.

Credenciales personalizadas e informes
Para las entradas de Credencial personalizada e Informe de campo personalizado, puede utilizar PowerShell para obtener el identificador de un sistema remoto (como LAPS), o crear informes personalizados con la entrada Informe personalizado. Las variables de RDM pueden utilizarse en estos dos tipos de entradas para recuperar los diversos parámetros añadidos a la entrada.
Credencial personalizada
El tipo de entrada Credencial personalizada permite ejecutar un script de PowerShell almacenado en la propia entrada o un script externo para recuperar una credencial desde un sistema o fichero externo.


Informe de campo personalizado
El tipo de entrada Informe de campo personalizado permite crear informes personalizados utilizando PowerShell para recuperar datos de entradas almacenados en la misma bóveda.

Eventos
RDM le ofrece la posibilidad de ejecutar automáticamente operaciones antes o después de establecer una conexión, o cuando se cierra una conexión. Por ejemplo, puede utilizar PowerShell para ejecutar otras operaciones. También puede invocar una entrada de PowerShell Macro/Script/Tool (Local) o (Remote) desde un evento, igual que las variables de RDM pueden utilizarse en un script o en una entrada Macro/Script/Tool para inyectar distintos valores de entrada.

Puede utilizar PowerShell para modificar temporalmente los parámetros de una entrada en la sección Antes de abrir (Before Open). Además, puede utilizar las funciones externas de PowerShell mediante el comando Import-Module (por ejemplo, para recuperar un número de ticket desde un sistema externo).
Editar (Acciones especiales) - Comando de PowerShell personalizado
Otra forma eficaz de utilizar PowerShell en RDM es a través de la función Editar (Acciones especiales) - Comando de PowerShell personalizado. Enumeramos algunos casos de uso habituales de esta función en nuestra página Ejemplos de acciones por lotes.

Módulo Devolutions.PowerShell
Por último, para los usuarios más avanzados de RDM, el módulo Devolutions.PowerShell permite interactuar con los objetos de RDM sin necesidad de instalar la aplicación. Incluso es posible interactuar directamente con los orígenes de datos de Devolutions Server o Devolutions Cloud. Para obtener más información, visite nuestra página del módulo principal Devolutions.PowerShell.
¡Todos alaben a PowerShell!
PowerShell no es la varita mágica que algunos profesionales ajenos a TI creen que es (pero, como mencioné antes, no hace falta romper esa admiración y ese asombro, ¿verdad?).
Sin embargo, creo que la mayoría —o quizás todos— coincidimos en que PowerShell ha hecho que nuestro trabajo en el mundo de la TI sea mucho más sencillo y eficiente. No, no es una varita mágica… ¡pero se le parece bastante!
Cuéntenos su opinión
¿Utiliza PowerShell en RDM para automatizar tareas y flujos de trabajo? Comparta sus experiencias dejando un comentario más abajo.
También le invitamos a enviarnos sus comentarios y sugerencias sobre cómo desea que integremos PowerShell en RDM (y en nuestros demás productos). Siempre le escuchamos, y utilizaremos sus aportaciones para introducir mejoras y novedades.

Érica Poirier