¿Hay alguna manera de mostrar el nivel de cifrado de una sesión RDP desde la línea de comandos / Powershell?

8

Para Windows 2008, necesito crear un script que muestre si las sesiones RDP conectadas están configuradas en un cifrado "alto" o algo más (por ejemplo, "compatible").

¿Alguien sabe de una manera de obtener esto sin pasar por la GUI?

Investigué wmic y powershell, pero no pude localizar nada. Encontré un módulo .net Powershell para Terminal Services, pero todo lo que haría fue mostrar el estado (es decir, enumerar sesiones). De hecho, necesito ver el nivel de cifrado.

Adam Brand
fuente
Curiosamente, la GUI de estado de la sesión solo tiene un campo en blanco donde debería estar el estado de cifrado. Aparentemente esta información es difícil de obtener.
Nic

Respuestas:

1

Parece que este comando de Power Shell debería hacerlo por ti

get-childitem -path RDS:\RDSConfiguration\Connections\RDP-Tcp\SecuritySettings\EncryptionLevel | format-list

http://technet.microsoft.com/en-us/library/ee791871(WS.10).aspx

Nixphoe
fuente
2
Creo que eso solo muestra las capacidades actuales de los hosts de sesión de escritorio remoto, no el estado de las sesiones individuales. Verificará dos veces.
Adam Brand
0

La API de C ++ para esto es WTSQuerySessionInformation con 26 como valor para WTS_INFO_CLASS. Ninguno de los módulos Powershell incluidos implementan esto, pero hay uno en la galería de scripts de TechNet aquí . Sin embargo, el módulo subyacente implementa un par de tipos que no están disponibles hasta Server 2008 R2, por lo que es posible que tenga que modificarlo ligeramente para que funcione como se espera. Puede encontrar más información sobre las estructuras compatibles aquí . Sé que esto es casi un año después del hecho, pero tal vez otros estén buscando esto ...

randcd
fuente