Зависит от того, что у вас есть и как вы это используете. Приведу реальный пример: есть несколько RDP серверов, на которых работают пользователи. Задача: реализовать вход на сервер с MFA авторизацией и использованием API уже существующей системы, где у пользователей есть логин/пароль, при этом надо было скрыть пароль и логин RDP от пользователей. Т.е., пользователь вводит свои стандартные логин/пароль, подтверждает вход через MFA, выбирает сервер из списка и далее подключается к нему в один клик. Реализовано было в виде связки WPF + WinForms приложения с интеграцией MSTSCLib и поддержкой базовых механизмов работы RDP типа HiDPI, несколько мониторов, полноэкранный режим и некоторые другие мелочи (
тыц). Много жесткого кекса, чтения документации и применения всяких хитростей, чтобы оно работало как надо: например основное приложение на WPF, MSTSLib в подключенном WinForms проекте, при этом все управление из WPF контролов, а контент - в WinForms окне.
В данном случае есть три варианта:
- Гугл в помощь - вроде есть уже готовые решения, с этим не работал - так что ничего конкретного не посоветую, выглядит наиболее простым решением
- Кастомный RDP клиент через MSTSCLib и API сервер, который будет работать с API ТМ - т.е. приложение стучится на ваш сервер, ждет подтверждения и только потом логинится
- Взять существующий RDP сервер и внести в него доработки для поддержки MFA или найти с поддержкой MFA