如何根据客户端计算机对基于浏览器的应用程序进行身份验证?假设管理员只能从此机器登录。
假设:可以完全控制网络和所涉及的所有计算机(客户端和服务器)。
我正在寻找一个apache / linux解决方案。
答案 0 :(得分:2)
您需要想出一些识别此机器的方法。在您的申请中哪些重要?物理位置? IP地址?
如果您完全控制机器,我会将SSL与客户端证书一起使用,并将客户端证书仅放在必须使用的机器上。有关如何使用Apache
进行配置的详细信息,请参阅here正如该文章所述,您可以将Apache设置为需要证书,用户名和密码以及限制与特定IP地址的连接。
编辑:您不需要单独的Web服务器来使用客户端证书。
根据应用程序的工作方式,您可能需要单独的URL。
请注意,该示例仅为某个目录配置证书
<Directory "/www/hidden/docs">
。因此,某些类别的用户登录方式不同,或者在登录到您网站的受客户端证书保护的部分后重定向它们
答案 1 :(得分:0)
如果您担心恶意企图欺骗网络上的客户端工作站,您可以考虑在客户端和服务器上设置IPSEC,然后您可以简单地使用IP地址并将其视为可信任 - 即使用标准Apache控制IP访问的技术。
或者,如果您认为您的网络是可信任的,只需为客户端提供静态IP并使用标准的apache技术来限制IP访问。
两者都需要在网络级别进行一些管理工作,但奖励是您不需要更改您的应用程序。