是哈希更好但是......
所以我知道我会后悔但是我们走了。我开始了一个新项目,并决定在MVC 4(BasicMembership)中使用内置的Microsoft会员资格,这样我就不必编写注册,登录,oauth等...
现在我想修改一些此行为并尽可能多地使用最佳实践。这是因为我决定将1个父母(公司)下的多个用户关联起来 - 我知道我可以完成控制器中的所有工作但仍然可以做到这一点,但这不是我的愿望。
这是我的问题/愿望:
1。)我想自己在SQL表UserProfile / WebPages_Membership中创建条目。我想在我的存储库中执行此操作,我不希望它与ASP.NET耦合。问题是MVC正在通过我无法访问的IMembershipAdapter加密密码。如何使用相同的加密密钥加密数据,以便完成#2?
2。)我不想完全重新发明轮子所以我仍然想要使用一些功能,如:
WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe)
3.)我不想在控制器中使用我的业务逻辑!当我在repo级别工作时,所有业务流程都将在业务层中进行。
感谢您花时间阅读我的帖子:-)
答案 0 :(得分:1)
首先,你看看:ASP.NET MembershipProvider -- How exactly does it do encryption?
第二个可能会使用已完成的内容,例如:CodeFirst Membership Provider它允许您首先使用EF代码创建自己的表。