asp.net – Microsoft成员提供者与自定义提供者vs完成自定义登录系统

我目前正在将一个非常老的,但工作经典的ASP网站转换为ASP.Net。

它有一个完全定制的用户管理系统。虽然它工作正常,它真的需要一个刷新,因为我希望它对一些未来的项目在工程中更灵活。

当我问别人这个问题时,他们说“你需要使用Microsoft提供程序”,并演讲了如何Microsoft释放所有这些东西是免费的,它们是多么好,应该尽可能多使用。

我已经做了相当多的研究(主要是观看http://asp.net/learn的视频),并且非常深刻的一些功能,因为似乎拖放组件的项目,需要我的年龄写。

然而,当前的成员资格数据库是复杂的解释,它是一个完全自定义书面数据库,有很多内部关系…它不是真正“兼容”与默认Microsoft提供程序。

我看了一下How Do I: Create a Custom Membership Provider?,但我觉得有点离开我的舒适区,担心它会慢,引入安全漏洞或根本不会工作。

在一天结束时,Microsoft成员资格提供程序应该为我工作 – 唯一的定制我真正需要的是登录以使用用户名/密码字段在我的数据库和创建用户脚本,有很多自定义代码到几三(需要提供服务等)。

我只是想知道,如果面对类似的情况你会做什么?

>使用Microsoft成员提供程序,并以某种方式让它为您工作(虽然我想建议)
>使用Microsoft成员资格提供程序,但使用围绕您的代码定制的自定义提供程序。
>使用自己的完全定制的解决方案?

解决方法

该视频确实复杂的事情:)如果你要实现一个自定义提供程序,然后反射器现有的是一个好地方开始:)

作为一个快速和脏的选项,当然,可以破解sql成员资格提供程序使用的存储过程,但是提供服务的自定义代码可能扩展。

如果你考虑它的远程供应服务不真正属于成员资格提供程序,它不是真正的会员功能 – 所有成员身份提供用户名和密码和身份验证。我自己的感觉是,你应该移动服务的供应出来,并在用户已经创建后在ASP.NET网站上执行 – 即使这只是调用存储过程一旦成员资格提供程序完成它的事情。如果你这样做,你可能会发现sql成员资格提供程序将做你需要的一切(可能还与角色&配置文件提供者),因此你有更少的代码写!

相关文章

项目要求通过网站上传大文件,比如视频文件,通过摸索实现了文件分片来上传,然后后台进行合并。 使用了...
安装新版本的Nginx(vim /etc/yum.repos.d/nginx.repo) [nginx-stable] name=nginx stable repo baseu...
什么是 SignalR ASP.NET Core ASP.NET Core SignalR 是一种开放源代码库,可简化将实时 web 功...
在Windows下使用Docker,我们选择Docker Desktop这个软件,非常方便。 ## Docker Desktop介绍及安装 Do...
项目开始设计的是运行在windows下,所以一开始采用的是windows服务模式来获取多媒体文件信息,后来要求...
银河麒麟高级服务器操作系统V10是针对企业级关键业务,适应虚拟化、云计算、大数据、工业互联网时代对主...