Использование элемента управления RDP для входа на компьютер с ОС Vista, для которого требуется проверка подлинности на уровне сети
Я пытаюсь использовать mstscax.dll (Microsoft Remote Desktop Control) для входа на компьютер под управлением Vista, который требует проверки подлинности на уровне сети.
Я поиграл со всеми методами в IMsRdpClientNonScriptable4, IMsRdpClientAdvancedSettings4 и IMsRdpClient6. Появляется множество функций, которые могут включить это.
- EnableCredSspSupport
- PromptForCredentials
- PromptForCredsOnClient
- NegotiateSecurityLayer
К сожалению, документация MSDN практически бесполезна, и я не могу найти примеров для любого из них в Интернете. Я знаю, что это возможно, потому что продукт под названием "Royal TS" может соединиться таким образом.
Один намек заключается в том, что и "Royal TS", и удаленный рабочий стол Vista создают приглашение авторизации, похожее на CredUIPromptForWindowsCredentials, это заставляет меня поверить, что я могу использовать такую функцию для получения учетных данных, а затем, возможно, использовать PublisherCertificateChain для расскажи об этом РДП.
Любые идеи будут полезны.
3 ответа
Так что, если другие люди найдут это:
Все, что нужно сделать, это EnableCredSspSupport=true, проблема, с которой я столкнулся, заключалась в том, что я загружал mstscax.dll вручную, а используемая версия поддерживала интерфейс IMsRdpClientNonScriptable4, но просто не работала. Если вы просто загружаете элемент управления в обычном режиме, просто настройка EnableCredSspSupport=true работает нормально.
Это свойство может помочь вам
RDPControl.AdvancedSettings8.EnableCredSspSupport = true;
Кроме того, это также зависит от вашей ОС поддержки аутентификации на уровне сети или нет.
Ссылка ( http://technet.microsoft.com/en-us/library/ff393716(v=ws.10).aspx)
Я никогда не пытался делать то, что вы делаете, но я предлагаю вам взглянуть на следующую статью:
Multi Remote Desktop Client.NET
В проектах используется mstscax.dll.