我需要为我正在处理的项目实施身份验证。但我无法做出选择:是否使用OpenId。对我来说,主要问题是如果用户已通过OpenId登录,如何检索用户的电子邮件(这对于发送通知至关重要)。当然,大多数OpenId提供商都会返回这些信息,但我不相信它们(因为任何人都可以设置OpenId提供商)。
我目前看到的方式是: 1.仅支持始终返回用户电子邮件的OpenId提供商以及我可以信任的人(在OpenId身份验证方案中激活电子邮件会很尴尬)。 2.忘记OpenId并使用经典身份验证。
您怎么看?
答案 0 :(得分:2)
实际上,最好的想法是实现OpenID,但无论如何都要验证电子邮件地址(或者如果OP没有,请要求用户提供)。
要求用户在使用OpenID时验证他们的电子邮件并不尴尬 - OP返回的数据不能保证是真的。
无论你做什么,都不要限制OpenID提供商 - 它只会引起混淆。如果地址来自已知的提供商,您可能根本无法验证地址。