Getting MultiplexingMembershipProvider to work with Episerver Commerce 1 R2

Member since: 2007

Since we had big problems getting this to work, i want to share this solution with you.  

ECF has default the CMSMembershipProvider installed. To get MultiplexingMembershipProvider to work, do the following:

1. Drop the Episerver DLLs in bin-folder of ECF UI.

2. Configure the web.config

3. Set the DefaultBaseLibraryFactory in global.asax App_start

EPiServer.BaseLibrary.ClassFactory.Instance = new EPiServer.Implementation.DefaultBaseLibraryFactory("DefaultBLF");

Observe! You still can NOT log in to the Commerce Manager with user belonging to any other provider than the CMSMembershipProvider! this issue i have been promised that it will be fixed to next version Episerver 7 Commerce.

But this allow us to have Administrators belonging to CMSMembershipProviders and can also login to Epirserver Admin.

web.config: (the users are saved in Episerver CMS User tables)

<membership defaultProvider="MultiplexingMembershipProvider">     
      <providers>
        <add name="MultiplexingMembershipProvider" 
             type="EPiServer.Security.MultiplexingMembershipProvider, EPiServer" 
             provider1="SqlServerMembershipProvider" 
             provider2="CMSMembershipProvider"  />
        <add name="CMSMembershipProvider" 
             type="Mediachase.Commerce.Customers.Profile.Providers.CustomerSqlMembershipProvider, Mediachase.Commerce" 
             connectionStringName="EpiServerDB" 
             applicationName="EPiServerSample" 
             enablePasswordRetrieval="false" 
             enablePasswordReset="true" 
             requiresQuestionAndAnswer="false" 
             requiresUniqueEmail="true" 
             passwordFormat="Hashed" 
             passwordStrengthRegularExpression="" 
             minRequiredPasswordLength="4" 
             minRequiredNonalphanumericCharacters="0"/>
        <add name="SqlServerMembershipProvider" 
             type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
             connectionStringName="EPiServerDB" 
             applicationName="EPiServerSample"  
             requiresQuestionAndAnswer="false" 
             requiresUniqueEmail="true" 
             passwordFormat="Hashed" 
             maxInvalidPasswordAttempts="5" 
             minRequiredPasswordLength="7" 
             minRequiredNonalphanumericCharacters="0" 
             passwordAttemptWindow="10" 
             passwordStrengthRegularExpression="" />
        </providers>
    </membership>

Feel free to comment this if i am wrong somewhere.   

       

#63501 Nov 21, 2012 8:37