2013-07-27 34 views
-1

可以在机器级授权用户。例如,只有当使用授权的计算机(我的个人笔记本电脑或其他经理的电脑)才能访问管理页面?任何其他计算机应该得到拒绝访问消息或其他东西。授权的计算机可能仍然会提供自己的管理员用户名和密码,以防人们伪造机器的身份。但我不是安全专家。在机器级授权用户?

回答

1

纠正我,如果我误解,但你只是要求访问者在特定的机器访问您的网站?

在这里跳入解决方案。第一个问题是,你如何知道哪些机器是“经理人”的机器?你有他们的IP地址列表吗?你有其他的身份证吗?

如果你有他们的IP地址,然后IP将他们白名单,并阻止所有其他的IP地址。

如果你没有他们的IP地址,那么你是有限的。没有可通过网络浏览器访问的计算机ID,因此您需要通过设置长期存在的Cookie和注册过程来创建自己的ID。

由于您已经有登录过程,因此下一部分相当简单。你以前使用过这个解决方案。当您登录Google邮件并点击“记住我”,并且在下次重新启动计算机时不需要登录时,Google基本上已将您的计算机标记为(设置Cookie)为您的计算机。

现在,如果你想获得超级花式,企业有NAC设置。每个系统在被允许连接到网络之前被识别。某些系统比其他系统获得更多访问权限。例如,在一家软件开发公司,工程师可能有权访问生产网络,而销售人员则不能。当他们连接时,销售人员在识别出他们是谁以及机器属于谁之后转移到受限制的vlan。如果您的公司属于这种情况,那么您会将整个子网块列入白名单。

最后一点。 Chase银行使用机器cookie概念,如下所示:第一次登录时,他们会询问您的用户名和密码。然后将代码发送到您的手机或某个第三方频道。输入代码后,设置一个机器cookie(相同的旧cookie)。下次登录时,他们会要求输入用户名和密码,然后查找机器cookie。如果机器cookie存在,那么它们不会让您再次输入代码。

您可以进行注册过程,除非您向经理提供可输入的代码。我不认为你想要注册机器比静态密码复杂得多,但如果你这样做了,你可以按照rfc 4226中的规范生成一个时间令牌。

0

您不能限制对特定计算设备的访问(因为有很多类型的设备使用,并且没有通用的绑定方式),但根据您的应用程序设计,您仍然可以解决您的问题。您不需要绑定到计算机,而是绑定到其他不可复制的硬件设备。

其中一个这样的设备是一个硬件cryptotoken或加密卡与证书和一个私钥在里面。用户分别将设备插入USB或读卡器,然后使用存储在该设备上的证书和私钥在服务器上进行身份验证)。使用证书进行客户端身份验证是一个很大但众所周知的话题,所以我在这里不讨论它。

虽然可以将加密设备移动到另一台计算机系统,但无法复制或从中提取私钥。因此,您可以(具有一定的高可靠性)假定只存在一个私钥副本,并将其存储在某个特定设备上。

当然,您需要为每个设备创建另一个证书,但这不是问题 - 这些证书的唯一目的是被服务器接受,因此服务器可以在需要时颁发新证书。