目前我正在换一个 非常 老,但是工作典ASP网站ASP.Net.

它有一个完全自定义编写的用户管理系统。同时,它工作得很好,真的需要一个刷新,因为我想让它可以更灵活一些未来项目的工作。

当我问别人有关这一点,他们说"你需要使用Microsoft提供商",并发表了演讲如何微软释放所有这些事情的自由和他们有多好,并应重新采用尽可能多的。

我已经做了相当多的研究(主要是看上视频 http://asp.net/learn ),我非常深刻的印象通过的一些特征,因为有出现拖组成的项目会带我的年龄来编写。

然而,目前的成员数据库是复杂的解释,它是一个完全自定义写入数据库,有许多内部的关系...它不是真正"兼容的"默认Microsoft提供者。

我已经看看 我如何:创造一个定制的成员提供者?, 但我觉得有点出我的舒适地带,担心这将会是缓慢的,介绍安全方面的漏洞,或者根本不工作。

在一天结束时,微软会成员提供者应该为我工作-唯一的定制我真正需要的是登录用户名/密码在我的数据库,并创建的用户脚本,这有很多定义码的几个第三方系统(需要提供服务等)。

我只是想知道,你会怎么做,如果面临着一个类似的情况吗?

  1. 使用微软会成员提供,并以某种方式得到它来为你工作(尽管我想建议)

  2. 使用微软会成员提供,但是使用定义的提供者,是定制围绕你的代码。

  3. 用你自己的完全定制的解决方案吗?

有帮助吗?

解决方案

那视频不复杂的事情:),如果你要实现一个自定义供应商然后反过现有的一个是一个良好的开端:)

作为一个快速的和肮脏的选择你可以,当然,哈克的存储程序SQL成员提供者使用,但该定义的代码,以提供服务是可能延伸。

如果你想到它的远程设置的服务并不真正属于一个成员提供者,它不是一个真正的成员资格功能的所有会员国不是提供用户名和密码和认证。我自己的感觉是,你应该移动提供服务的存在,并执行它的ASP.NET 网站后,一个用户已经建立,即使这仅仅是调用存储程序一旦会员国提供已经完成了它的事情。如果你这样做,你可能会发现SQL成员资格提供商会尽一切你需要的(可能有的角色和简供应商也是如此),因此,你有办法较少的代码写!

其他提示

我已经在类似的情况在过去。在这两种情况下,我们创建了定义的实现提供商(数,RoleProvider,ProfileProvider)围绕现有机制。

在这两种情况下,我们只有用的提供者实现对于只读访问,例如给我们很容易验证gubbins在网。配置和诸如此类。用户的行政代码是留以及单独作为它的工作就好了。

如果现有的供应商工作(有权利领域的数据),用于启动。你可以很容易地更换,与客户提供商之后(只是一个单一的配置价值的变化)。

当心没有一个"盒子之外"ASP.NET 管理接口,你会需要你的拥有或使用第三方之一。

使用我的专门数的工作对我自己的数据库的数据表。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top