我正在寻找有关身份验证的信息,但我是新手,所以我不知道任何系统。
我的诀窍是:用户只能通过一台计算机/移动设备/平板电脑进行身份验证。
我正在考虑使用MAC地址监控系统,当用户使用其他设备连接时,我可以看到这就像一个警报。
还有哪些其他方法?证书?
重复一遍,我对此非常新手。
PD:我的应用程序已经使用框架Symfony2进行开发
答案 0 :(得分:2)
所以首先MAC地址是一个网络本地地址,这意味着它通过路由器/交换机后MAC地址会发生变化,所以你无法对此进行中继。即使您想使用您的客户端软件查找接口MAC地址,也可以更改MAC。
其次,证书会为您提供某些属性,例如不可否认性(您可以在用户执行的操作上计算数字签名,然后无法拒绝在您的应用程序中执行某些操作)。但公钥基础设施真的很难管理!您需要您的证书颁发机构颁发有效证书,您需要监控和更新证书撤销列表,以拒绝被盗/无效/伪造证书被视为有效和真实。
如果它不是以安全为中心的应用程序,并且在您分析了选项后,我建议使用简单的表单身份验证(用户名/密码/验证码)。并编写机制,定期(即每秒)发送一个AJAX请求刷新用户状态,这样你就可以识别用户是否关闭浏览器或是否已打开窗口。在您的身份验证过程中,您可以检查给定用户名的其他ACTIVE会话并拒绝登录或以其他方式执行操作。如果您需要有关身份验证的更多信息,我建议您查看security patterns