我正在构建一个新的ASP.NET MVC应用程序(在C#中),其中一个要求是创建一个新的成员数据库.为此,我们需要角色来管理不同类型的成员和配置文件,以管理附加到每个成员的其他元数据.到目前为止,只需使用标准的MembershipProvider,RoleProvider和ProfileProvider作为.NET Framework的一部分提供.
但是,问题是我想允许不同的身份验证方法.我希望帐户和登录凭据具有一对多的关系(一个帐户可以附加一些登录凭据).例如,用户可能同时将OpenID和ActiveDirectory帐户附加到其帐户.
但是,在尝试了几种方法后,我们选择了MembershipProvider路线(解释了它是如何实现的,如下所示).
我的问题是,人们之前是如何做到这一点的,以及人们如何建议我接近它?它似乎是在很多网站上实现的东西,但在这里的搜索并没有返回任何可靠的东西.
编辑:在隔夜和今天早上四处寻找好几个小时之后 - 我仍然没有意识到屠杀一个会员提供者将是最简单的选择.有多个MembershipProviders会产生相同的效果吗?
BOUNTY EDIT:没有回复,我假设没有更优化的解决方案,我发布的答案.这是真的吗?我正在提供奖励,试着看看是否有人对此有任何进一步的想法以及是否有更好的选择.
BOUNTY ACCEPT EDIT:我认为WIF是下面接受的答案,对于.NET 4版本和其他版本可能适用于3.5.除此之外,也许一个屠宰的MembershipProvider或改编的可能仍然是相关的.