On fairly new project we have a requirement that the front end users to our site are stored and managed in a separate DB, different to that of Umbraco. This we have setup using ASP.Net Identity which is working great and is pretty much the standard MVC template boiler plate with customer user classes.
We are now trying to integrate Umbraco CMS into the project which is going okay.
Is it possible to have to separate user account providers? One Umbraco purely used for backend access, then keep the front end provider as is? Or do I have to re-think the architecture.
I suppose my question is, has anyone done something like this before, if so, how and would you recommend it, did you run into any nags?
Umbraco already uses a custom MembershipProvider. You can either extend it or replace it. Which is probably what you want to do so you can query the other database and let Umbraco use the provider.
Here is a tutorial on how to replace the default provider. Basically you just need to inherit from MembershipProvider (and add the required methods) and create a custom RoleProvider for it.
Umbraco already separates backend and frontend users. Frontend users are Members and backend users are called Users.
By replacing the MembershipProvider you do NOT replace Users, but only Members. So it's exactly the behavior you want to achieve.
After a bit more reading I realized as you say the Member - User separation between front end and back end.
Thanks for the tutorial link which is really helpful and looks like the solution!
(More requirements around the project have come to light recently and it looks like we are going to keep the Umbraco site running separately to the web app now but exposing content via the WebAPI)
Separate front end user logins and membership than backend
Hi Guys,
On fairly new project we have a requirement that the front end users to our site are stored and managed in a separate DB, different to that of Umbraco. This we have setup using ASP.Net Identity which is working great and is pretty much the standard MVC template boiler plate with customer user classes.
We are now trying to integrate Umbraco CMS into the project which is going okay.
Is it possible to have to separate user account providers? One Umbraco purely used for backend access, then keep the front end provider as is? Or do I have to re-think the architecture.
I suppose my question is, has anyone done something like this before, if so, how and would you recommend it, did you run into any nags?
Umbraco already uses a custom MembershipProvider. You can either extend it or replace it. Which is probably what you want to do so you can query the other database and let Umbraco use the provider.
Here is a tutorial on how to replace the default provider. Basically you just need to inherit from
MembershipProvider
(and add the required methods) and create a customRoleProvider
for it.Umbraco already separates backend and frontend users. Frontend users are Members and backend users are called Users.
By replacing the
MembershipProvider
you do NOT replace Users, but only Members. So it's exactly the behavior you want to achieve.Hey Tobias - Thanks for the response
After a bit more reading I realized as you say the Member - User separation between front end and back end.
Thanks for the tutorial link which is really helpful and looks like the solution!
(More requirements around the project have come to light recently and it looks like we are going to keep the Umbraco site running separately to the web app now but exposing content via the WebAPI)
is working on a reply...