I am building WebAPI on OWIN that needs authorization. I implemented OAuth 2.0 and I am really happy with it. For now, there is a grant_type "password" authentication implemented and now I need a way to use external authentication systems, i.e. Facebook, Google, etc.
The scenario I am trying to figure out is this:
- iOS/Android app authorizes user with Facebook using native libraries and get Facebook access_key
- I should get that access_key to my OAuth OWIN backend
- Test the access key with Facebook API
- Get user_id
- Then map the user_id with a user in my system
- Issue Identity Token for that particular user
Am I conceptually right and if so, how should I implement this in OAuth pipeline?