Standard provider in Episerver CMS (MVC site) cannot create users from admin panel. How can I fix it and add the authorization and authentication to the MVC site on Episerver CMS. Can I use standart MVC authorization system (from MVC template) in Episerver CMS?
EPiServer can create users from Admin only if configured membership provider allows it and DefaultMembershipProvider (old version SqlMembershipProvider) supports it.
EPiServer uses also MultiplexingMembershipProvider which allows to combine multiple providers. More info here: http://world.episerver.com/Blogs/Anders-Hattestad/Dates/2010/12/Multiplexing-providers/
So to configure DefaultMembershipProvider, you have to install Nuget package: Microsoft ASP.NET Universal Providers 1.2.0 This is not latest NuGet package. Latest package has dependency on Entity Framework 6 and as I know it do not work with EPiServer. So install version 1.2.0
Then in Web.config add membership provider, role provider and profile provider:
<profile defaultProvider="DefaultProfileProvider" automaticSaveEnabled="true" enabled="true">
<properties>
<add name="Address" type="System.String" />
<add name="ZipCode" type="System.String" />
<add name="Locality" type="System.String" />
<add name="Email" type="System.String" />
<add name="FirstName" type="System.String" />
<add name="LastName" type="System.String" />
<add name="Language" type="System.String" />
<add name="Country" type="System.String" />
<add name="Company" type="System.String" />
<add name="Title" type="System.String" />
<add name="SubscriptionInfo" type="EPiServer.Personalization.SubscriptionInfo, EPiServer" />
<add name="CustomExplorerTreePanel" type="System.String" />
<add name="FileManagerFavourites" type="System.Collections.Generic.List`1[System.String]" />
<add name="EditTreeSettings" type="EPiServer.Personalization.GuiSettings, EPiServer" />
<add name="ClientToolsActivationKey" type="System.String" />
<add name="FrameworkName" type="System.String" />
</properties>
<providers>
<clear />
<add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="EPiServerDB" applicationName="SampleWeb" />
</providers>
</profile>
<roleManager enabled="true" defaultProvider="MultiplexingRoleProvider" cacheRolesInCookie="true">
<providers>
<clear />
<add name="MultiplexingRoleProvider" type="EPiServer.Security.MultiplexingRoleProvider, EPiServer.Framework, Version=7.5.394.2, Culture=neutral, PublicKeyToken=8fe83dea738b45b7" provider1="DefaultRoleProvider" provider2="WindowsRoleProvider" providerMap1="DefaultMembershipProvider" providerMap2="WindowsMembershipProvider" />
<add name="WindowsRoleProvider" applicationName="EPiServerSample" type="EPiServer.Security.WindowsRoleProvider, EPiServer" />
<add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="EPiServerDB" applicationName="SampleWeb" />
</providers>
</roleManager>
<membership defaultProvider="MultiplexingMembershipProvider">
<providers>
<clear />
<add name="MultiplexingMembershipProvider" type="EPiServer.Security.MultiplexingMembershipProvider, EPiServer.Framework, Version=7.5.394.2, Culture=neutral, PublicKeyToken=8fe83dea738b45b7" provider1="DefaultMembershipProvider" provider2="WindowsMembershipProvider" />
<add name="WindowsMembershipProvider" type="EPiServer.Security.WindowsMembershipProvider, EPiServer" deletePrefix="BUILTIN\" searchByEmail="true" />
<add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="EPiServerDB" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="SampleWeb" />
</providers>
</membership>
I've used here also WindowsMembershp provide so I can login with my Windows credentials, but note that it is registered as second in MultiplexingMembershipProvider: provider2="WindowsMembershipProvider".
After configuration done, you can use normal ASP.NET membership API for authorization and authentication.