Let me apologize first if this topic is too subjective, or not concrete enough.
I want to implement a login api for an internal web service at my company using asp web api 2. I know how to implement a owin bearer token system for a single user login scenario for a single website.
The issue here is that I want to provide a single login source for all of the different web applications we will be making in the future. A user will login to this source, it will save the token as a cookie(or something similar) and then continue to work from any number of different web apps afterwards.
So far it seems like all the external web tokens are oriented with Facebook or Google, so external login doesn't seem to be the way i want to go. I don't want to have to rewrite the authentication logic every time I make a new web application. How should I design my application so that I can login using a simple single web API for tokens, and easily integrate authentication into any new web application we make?
*Note: We have an internal Nuget repository that we can use to this effect.