安全地假设电子邮件地址是唯一的?

时间:2014-04-22 21:23:36

标签: security email authentication login

为学校构建应用程序。教师将为他们分配教室。教师通过电子邮件/密码登录。

我们还有区域主管/管理员,他们需要轻松地将这些教室分发给教师。目前,我有一个功能,他们可以将教室分配到电子邮件地址,当有该电子邮件的用户注册时,它会自动授予他们。

这样安全吗?或者两个人是否可以拥有相同的电子邮件地址?

2 个答案:

答案 0 :(得分:0)

有几件事情向我发出。

1)您似乎在创建帐户(电子邮件地址)之前为其分配资源。您如何知道注册该电子邮件地址的人是您所期望的人?

2)如果您控制电子邮件地址的域并强制执行唯一性,则只能假定电子邮件地址是唯一的。否则,电子邮件地址可能会随着时间的推移而回收(在jsmith@company.com等公司电子邮件地址中很常见)。

答案 1 :(得分:0)

两个电子邮件帐户不能使用相同的电子邮件地址,但是多个人是否使用相同的地址取决于域所有者的政策,也可能取决于公共系统(如Gmail或Hotmail)的个人用户如果他们想与他人分享他们的地址。

应用程序(或其特定部署)是否仅限于允许来自学校域名的注册? (例如在Example College只允许以@example.edu结尾的电子邮件?)

如果是这样,您应该向学校查询电子邮件的分发和使用方式。如果有人可以注册,您应该知道可能会分享某些机构的电子邮件地址,或者如果不再使用该电子邮件地址可能会被新教师回收。

为了使这种方法更安全,你应该:

  • 验证每个注册人的电子邮件地址。这可以是包含带有cryptographically secure RNG生成的ID的链接的确认电子邮件。当用户点击链接http://www.example.com/confirm.aspx?id=123456qwerty时,这将验证他们是否有权访问该电子邮件地址并授予他们访问教室的权限。
  • 在一定天数后,预先授予的房间到期。这将减少课堂被授予任何回收电子邮件地址的机会。