我一直远离asp.net会员,因为它看起来很臃肿,而且(当时)不可测试.特别是在asp.net MVC的情况下,是否有人使用替代解决方案为用户分配角色,并为登录用户存储一些附加信息?有什么建议?只是实现您需要的功能,只是自己滚动它是疯了吗?
解决方法
ASP.NET成员资格使用提供程序模型进行存储. sqlMembershipProvider从抽象MembershipProvider类继承加密/散列密码功能.但您也可以从MembershipProvider继承,并在需要时在自定义提供程序中获取该功能.
如果您使用sqlMembershipProvider,您将获得一个完全正常工作的成员资格数据库,其中包含完整的密码管理(检查,更改,重置,无效的密码尝试)和用户管理(CRUD操作,锁定用户).
所有这些都是API级别.您可以根据API创建所需的任何UI.
使用sqlMembershipProvider不要求您使用角色提供程序或配置文件提供程序或任何其他东西,并且您可以在不影响成员资格的情况下自行处理这些内容.至少我建议使用经过良好测试的sqlMembershipProvider作为基本内容的安全核心.