我的主应用程序数据库中已经有一个User
表,其中包含一个电子邮件地址(将用作用户名)和一个密码。我想使用我的数据库而不是默认身份验证数据库(ASPNETDB)进行身份验证。使用自定义数据库而不是ASPNETDB的ASP.NET MVC身份验证?
问题:
这是一个坏主意?使用我自己的数据库进行身份验证是否是一大堆蠕虫?
通过这样做我添加了多少工作?我已经有散列密码的代码和一个将检查电子邮件和密码是否与数据库匹配的查询。所以,我不会从头开始。
我需要做什么来使用我的数据库,而不是ASPNETDB?我希望这可以通过几个简单的步骤来描述,但是如果没有,你能指出我是否有很好的来源?
更新
我仍然在寻找一个更详细一点上我的第三个问题在这里。我需要写我自己的MembershipProvider
吗?我需要对web.config文件进行哪些更改?如果我编写自己的解决方案,[Authorize]
属性仍然可以工作吗?我可以使用自动生成的AccountController进行一些小的修改,或者我基本上需要从头开始重写帐户控制器吗?
您的链接已损坏。 – James 2014-08-25 12:29:25
我在另一个stackoverflow文章中读到我们需要实现IActionFilter来进行自定义身份验证。这是正确的方法吗? – James 2014-08-25 13:18:01
@James FWIW这是一个谷歌缓存的链接:http://webcache.googleusercontent.com/search?q=cache:-Os-ZJxfa_QJ:www.hurryupandwait.io/blog/implementing-custom-membership-provider-and-角色提供商换认证-ASP净MVC应用+ CD = 1&HL = EN&CT = clnk&GL =在 – Shrayas 2015-06-24 06:12:31