Использование элемента управления 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.

Другие вопросы по тегам