
In short focus on the system components that manage authentication and leave the user management to the application. The goal of this post is to show the minimal pieces of the OWIN Identity system to handle Local and External account logins and hook them to a custom domain model rather than using the Entity Framework based UserManager. Just the Core Identity Features for Local and External Logins But there’s not a lot of information on using the core Identity pieces without the full bore UserManager and Entity Framework data store, in order to use just the Authentication/Authorization on their own and integrate them with my own business objects/domain model. Lots of intro articles that talk about how to use the stuff ‘as is’ without customization. When you first start looking at Identity the amount of information out there is rather overwhelming.

The old implementation used DotNetOpenAuth combined with FormsAuthentication which I blogged about years ago, but DotnetOpenAuth seems to have fallen out of favor over the years, so I decided to bite the bullet and switch over to the newer, built-in OWIN based Identity functionality in ASP.NET 4. Promptly I started getting a ton of emails, and decided I had to re-implement the external providers. That is until Google decided to pull the plug on the old OpenId implementation. But it’s been running unencumbered for the last 7 years. Codepaste is a pretty old site in fact it is was the first MVC application I ever built 😃. I’ve come down this path myself over the last weekend as one of my old sites – – required an update to the old OpenID authentication I had running on that site. So in this post I’ll go over this scenario. It’s difficult to find the information necessary to just create the necessary handlers that can deal with linking accounts to external oAuth providers like Google, Facebook, GitHub and so on. The process is not necessarily hard – but it’s not very well documented. In this post I hope I can show you how to do the latter, showing only the pieces that you need. You have to either rip out the pieces you don’t need from an full template install, or add the necessary pieces. However, if you have an existing application, or if the full Entity Framework based identity structure doesn’t work for you, then the process to hook up a minimal and custom implementation that uses your own domain/business model and classes is not exactly as straightforward.

If you create a new project and choose an MVC project and choose to add both internal and external authentication, it’s fairly straight forward to get a reasonable identity implementation into your application.


NET Core.Īs of ASP.NET 4, ASP.NET provides a fairly useful identity system. NET Frameworks based ASP.NET MVC applications only.
