RemoteApp .rdp incrustar creds?

11

Servidor Windows 2008 R2 que ejecuta Servicios de escritorio remoto (lo que solíamos llamar a Servicios de Terminal Server en los viejos tiempos) . Este servidor es el punto de entrada a una aplicación alojada. Supongo que podría llamarlo Software as a Service. Tenemos clientes de terceros que se conectan para usarlo.

Uso de RemoteApp Manager para crear accesos directos .rdp de RemoteApp para distribuir a las estaciones de trabajo del cliente. Estas estaciones de trabajo no están en el mismo dominio que el servidor RDS. No existe una relación de confianza entre dominios (ni la habrá). Existe una VPN de sitio a sitio estrechamente controlada entre las estaciones de trabajo y el servidor RDS, estamos bastante seguros de que tenemos acceso al servidor bloqueado.

La aplicación remota que se ejecuta es una aplicación ERP con su propio esquema de autenticación.

¿La cuestión? Estoy tratando de evitar la necesidad de crear inicios de sesión de AD para cada usuario final cuando me conecto al servidor RemoteApp. De hecho, dado que estamos haciendo una aplicación remota y tienen que autenticarse en esa aplicación, prefiero simplemente no solicitarles créditos de AD. Ciertamente, no quiero que se vean atrapados en la administración de contraseñas de AD (y vencimientos periódicos) para las cuentas que solo usan para acceder a su inicio de sesión de ERP.

Sin embargo, no puedo entender cómo incrustar créditos AD en un archivo .rdp de RemoteApp. Realmente no quiero desactivar toda la autenticación en el servidor RDS en ese nivel.

¿Alguna buena opción? Mi objetivo es hacer que esto sea lo más sencillo posible para los usuarios finales.

Preguntas aclaratorias son bienvenidas.

Chris_K
fuente

Respuestas:

10

Es posible incrustar una contraseña en un archivo .rdp, pero la contraseña está encriptada con el SID de su cuenta de usuario local de tal manera que el archivo .rdp no sea intercambiable entre usuarios o computadoras. Este comportamiento es por diseño: Microsoft no quería que un intruso pudiera obtener las claves de un servidor terminal simplemente robando un archivo .rdp del escritorio de alguien.

Afortunadamente, existe una solución razonablemente bien documentada. Básicamente, debe crear el archivo .rdp "sobre la marcha" a través de un archivo por lotes o script que el usuario ejecuta en lugar de invocar mstsc.exedirectamente. Su secuencia de comandos crea el archivo .rdp apropiado y, al hacerlo, encripta la contraseña de tal manera que la mstsc.exeacepte en el contexto del usuario actual.

Recursos:

Cada uno de los artículos anteriores incluye un enlace a una herramienta que se puede utilizar para cifrar las contraseñas RDP y / o el código fuente. Sugeriría trabajar desde el código fuente si es posible. (Como siempre, use binarios compilados por extraños de Internet bajo su propio riesgo).

Skyhawk
fuente
¡Este parece ser el camino a seguir y gracias por los enlaces! Divertidamente (OK, no realmente) la antigua "necesidad comercial" para esto desapareció hoy, pero creo que esta habría sido la respuesta.
Chris_K
1

Mmmm interesante. Lo primero que viene a la mente es usar clave / certificado (como ssh):

¿Esto ayuda?

mbrownnyc
fuente
Certificados Sí, vale la pena investigarlo. No tengo un servidor de puerta de enlace en la mezcla, pero ¿tal vez impulsar certificados de cliente podría ser una opción? Gracias.
Chris_K
Mi search-fu puede ser débil, pero no veo una opción para reemplazar user / pass con un certificado para clientes.
Chris_K
Listo para la complejidad? ¡Pensado así! technet.microsoft.com/en-us/library/ff404286(WS.10).aspx (nota: la redirección de la tarjeta inteligente puede ocurrir en cualquier cliente RDP 6.0 + ... y no he implementado nada de esto)
mbrownnyc
... ¡Oh, qué asco!
Chris_K