Using multiple membership providers within ASP.Net MVC 3 application

后端 未结 1 447
一个人的身影
一个人的身影 2020-12-23 14:10

I am adding a new area to an existing mvc 3 razor app as an admin area for managing some settings and content. The rest of the site is currently secured by a custom provider

相关标签:
1条回答
  • 2020-12-23 14:42

    There is actually very little headache involved.

    Simply add all the MembershipProviders you want in web.config:

    <membership defaultProvider="MembershipProvider1">
      <providers>
        <clear/>
        <add name="MembershipProvider1" type="MvcApplication.MembershipProvider1" />
        <add name="MembershipProvider2" type="MvcApplication.MembershipProvider2" />
        <add name="AspNetSqlMembershipProvider"
          type="System.Web.Security.SqlMembershipProvider"      
          connectionStringName="ApplicationServices" />
      </providers>
    </membership>
    

    As you can see I have added two providers. I have also specified a default provider.

    I can then switch between the two like this:

    var membershipProvider1 = Membership.Providers["MembershipProvider1"];
    membershipProvider1.ValidateUser("Mike", "banana");
    
    var membershipProvider2 = Membership.Providers["MembershipProvider2"];
    membershipProvider2.ValidateUser("Mike", "orange");
    

    You probably want to wrap that into an application service or something, but you get the idea. Not so much headache, right?

    0 讨论(0)
提交回复
热议问题