我正在建立一个网站,只允许我办公室的每个人只能通过办公室的电脑访问该页面。看起来我需要从ASP.net Web服务器上的代码中识别客户端。我怎样才能做到这一点?请帮忙!
答案 0 :(得分:2)
如果需要防水,这将是艰难的。
思路:
也许最简单:如果计算机都有固定的LAN IP,请维护一个IP和用户表。允许用户仅从“他们的”IP登录。
使用Cookie将计算机绑定到用户。创建“将此计算机连接到我的用户帐户”页面。该页面设置了一个永久存在于用户计算机上的cookie。 Cookie包含与服务器端的用户名关联的ID。这需要用户在“连接”时确实信任他们的计算机,但您不必直接在他们的计算机上进行任何工作。
如果您的同事仅限于使用一个浏览器,请查看您是否可以使用该浏览器的用户代理并注入一些唯一值。这可以通过修改注册表值IIRC来为Internet Explorer完成。这将要求您单独访问每台计算机。
在每台用户的计算机上安装一项小型服务,在连接时发回预定义的ID代码。该ID标识用户从中访问该站点的计算机。这将要求您单独访问每台计算机。
你的评论:完全疯狂的想法:编写一个登录网络路由器的脚本,解析“DHCP客户端”表,从而找出哪个MAC地址具有哪个IP地址。不是一个快速的工作,而不是一个干净的解决方案,但如果路由器有一个Web界面,它可能是可能的。当然,您可能必须在路由器获得软件更新时调整脚本。
这些都不足以防止犯罪活动,但在正常情况下应该识别计算机。
答案 1 :(得分:0)
假设:
网络中的计算机被分配了静态IP地址..
可能的解决方案:
将每个IP与每个特定用户相关联。
每次用户尝试登录该服务时,都会询问他们的凭据,即用户名,密码,并检查这些凭据是否与存储在数据库中的用户名和密码相关联的IP地址匹配。只是想一想!