我想实现经过身份验证的服务器以接受来自命令提示符的请求。 用户可以使用他的用户名和密码获取经过身份验证的令牌。
所以问题是,当他拥有该令牌时,他可以从具有该令牌的任何机器提出进一步的请求。我想限制单机的令牌。所以任何想法如何限制它?
我心中有一些东西
答案 0 :(得分:0)
使用IP和端口号(我希望它不是一个合适的解决方案因为 改变IP很容易)
IP和端口号不起作用。如果用户位于具有本地IP地址的路由后面,则将与其他用户共享相同的IP地址。
使用某些供应商ID或组织ID进行验证(我认为它也不是 最佳解决方案)。
我不知道。
你是说mac地址吗? Get the MAC of ASP.NET website user我认为可以使用机器密钥。如何获取机器密钥 请求?
我要尝试的第一件事是设置cookieless =“AutoDetect”。如果它不起作用,那么我会找到替代解决方案。
<forms cookieless="AutoDetect" ... />
如果用户不支持cookie,它基本上在网址中嵌入了SessionID。
所以问题是,当他有这个标记时,他可以提出进一步的请求 从具有该令牌的任何机器。我想限制令牌 单机。所以任何想法如何限制它?
用户可以复制他的AuthenticationToken,并使用来自其他浏览器的相同AuthenticationToken浏览您的网站。尽管他可以,为什么他想这样做呢?就像他偷偷进入自己的房子,虽然他有一把钥匙。
默认情况下,只能从同一个域的同一浏览器访问AuthenticationToken(除非您修改它)。只要您使用HTTPS,AuthenticationToken就不能轻易地加入jack(除非用户的计算机被黑客攻击)。花费时间限制通过IP限制AuthenticationToken是不值得的。