【问题标题】:How do I create Ntlm Type 1 and Type 3 messages in .Net如何在 .Net 中创建 Ntlm Type 1 和 Type 3 消息
【发布时间】:2011-03-14 00:04:39
【问题描述】:

我需要为 NTLM 握手创建类型 1 消息和类型 3 消息。是否有任何.Net API ?

本质上,应用程序是基于 WPF 的,但使用 Socket 来从服务器传输数据。使用套接字是一项技术要求,但问题是当用户需要使用代理服务器连接到服务器时。此外,如果代理授权基于 Ntlm,客户端应用程序需要创建 Type 1 和 Type 3 消息才能与代理服务器握手。

我的问题是:.NET 库中是否已经有任何 API 可用以创建这些不同类型的 NTLM 消息?任何帮助或替代方法将不胜感激。提前致谢。

【问题讨论】:

    标签: c# network-programming


    【解决方案1】:

    如果您受限于套接字,则必须手动实现整个 NTLM 身份验证协议。微软在 secur32.dll 中有一个 Security Support Provider Interface (SSPI) 来实现各种安全协议,您可能可以通过 PInvoke 从那里重用一些 API 函数(还有某种 .net 包装器可用here)。

    这里是NTLM auth protocol 的描述,API 示例位于 NTLMSSP 和 SSPI 部分。基本上,整个身份验证方案都是围绕使用不同参数调用AcquireCredentialsHandle / InitializeSecurityContext 而发展的。这将为您提供原始字节格式的 type1/type3 ntlm 消息,您必须通过套接字发送/接收这些消息。

    【讨论】:

      猜你喜欢
      • 2011-01-06
      • 2020-09-21
      • 2019-01-14
      • 2012-10-05
      • 2013-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多