【问题标题】:Authenticating (or even identifying) client machine in ASP.NET在 ASP.NET 中验证(甚至识别)客户端计算机
【发布时间】:2009-09-26 00:31:35
【问题描述】:

哪些策略可以很好地识别用户正在浏览的机器?

假设: 域计算机上的域用户使用 IE 和集成 Windows 身份验证,至少具有 NTLM。

这应该很容易,但我找不到如何从请求或任何其他漏洞中提取此信息。每个客户端证书似乎有很多开销(我什至不知道您是否可以通过请求访问证书信息)。我还考虑了一个基于 MAC 地址的方案...... ick。卡尔冈,带我走!

【问题讨论】:

    标签: asp.net authentication windows-authentication


    【解决方案1】:

    【讨论】:

    • /facepalm... 太好了。我有一种感觉,它受反向 dns 奇思妙想的影响,这对我们来说可能是个问题。我会检查一下。谢谢。
    【解决方案2】:

    Request.UserHostName 对 HTTP 标头中的 IP 地址进行反向 dns 查找。出于我们的目的,这将太不可靠了。感谢 RM 的指点。

    最后,我相信我们会推荐每个客户端的证书,并根据 Request.ClientCertificate 在数据库中跟踪我们的机器特定信息。

    【讨论】:

      【解决方案3】:

      您也可以尝试向请求中的 IP 地址发送 nbtstat 样式的 ping。响应中的 20h 记录将是主机名。谷歌搜索为此找到了几个代码示例。

      值得一试,这似乎比分发和维护每个客户端的证书更容易。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-06-04
        • 1970-01-01
        • 2012-05-05
        • 2015-11-08
        • 2010-09-14
        • 2017-01-11
        • 2014-07-21
        相关资源
        最近更新 更多