asp.net – 根据电子邮件地址将OAuth帐户与现有帐户合并
发布时间:2020-12-16 03:45:18 所属栏目:asp.Net 来源:网络整理
导读:我正在开发一个MVC4 / Razor网站,客户要求该网站能够使用Facebook / Google帐户登录.幸运的是,使用Forms身份验证相当简单. 但是,我遇到的问题是:如果提供商返回的用户电子邮件地址与现有用户名相匹配怎么办? 例如,tim@rocketeerconsulting.com以前作为本机
我正在开发一个MVC4 / Razor网站,客户要求该网站能够使用Facebook / Google帐户登录.幸运的是,使用Forms身份验证相当简单.
但是,我遇到的问题是:如果提供商返回的用户电子邮件地址与现有用户名相匹配怎么办? 例如,tim@rocketeerconsulting.com以前作为本机帐户存在.无论出于何种原因,用户都想使用Facebook登录. Facebook返回蒂姆@ rocketeerconsulting是用户的电子邮件地址.如果用户尝试使用该信息创建帐户,MVC4将声明该帐户已存在. 有一些问题: >如果OAuth提供商提供的电子邮件地址与现有帐户匹配,是否允许用户合并帐户? 我认识到有一个类似的问题here,但我的问题特别适用于MVC4中的Forms auth的上下文. 解决方法
你是对的:这种方式很容易冒充 实际上,要为问题添加更多内容,并非所有OAuth提供商都会为您提供用户电子邮件地址(LinedId). 每个OAuth提供商都使用电子邮件地址进行初始验证,但是,用户可以拥有多个,实际上还有一些让您将其作为备份. 因此,电子邮件不是识别用户的好“关键”. 您的解决方案可能是拥有一个包含您自己的内部ID的表,并将其与OAuth提供商唯一的用户标识相关联:一些使用电子邮件地址,其他人使用屏幕名称或类似名称. 这将允许用户在您的网站上拥有多个OAuth验证程序. 我实现了这个:Linkedin,Twitter,亚马逊,谷歌,微软和Facebook.另外,我们的用户可以使用他们的域帐户登录,但这是另一个故事……
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 隐藏字段vs viewstate
- 使用SharpZipLib压缩打包多个内存中的文件
- asp.net-mvc – 我可以在MVC3中的Html.LabelFor中添加一个C
- asp.net – 在IE10中不应该“X-UA兼容IE =边缘”头覆盖“兼
- 浅析微软的网关项目 -- ReverseProxy
- ASP.NET MVC SEO URL
- asp.net-mvc – 如何为MVC4配置Ninject并提供自定义成员资格
- asp.net-mvc – 如何使用不同的名称绑定视图模型属性
- asp.net – Web窗体用户控件加载时的空字段
- 如何在ASP.NET 5中添加一个TypeScript绝对类型的定义?
推荐文章
站长推荐
- 谈谈你最熟悉的System.DateTime[上篇]
- asp.net 共享文件夹 网络文件夹 文件读写
- asp.net – Server.Transfer对Google不可见吗?
- asp.net – 为什么不删除Server和X-Powered-By标
- asp.net-mvc – 如何使用枚举值填充下拉列表?
- asp.net-mvc – 旧版PHP URL不会在MVC中调用自定
- asp.net使用DataTable构造Json字符串的方法
- asp.net – 如何在Web App和Windows Form Applic
- asp.net – 我可以在GoDaddy上使用NHibernate吗?
- asp.net – 实体框架“等待操作超时”就简单的De
热点阅读