-
Notifications
You must be signed in to change notification settings - Fork 111
Description
Authn supports oauth accounts strictly through the use of their redirect URIs which handle the authentication flow of the third party provider and creation/authentication of users in authn server. This solution works when redirecting the user from a web app but causes multiple issues when used in an ios/android app.
These issues include:
- Due to Google and Apple's Policy regarding Login Process via webview, this immediately raises a high risk of being rejected. Though we attempted to find a way to circumvent this risk, it is proving to be difficult.
- Using this method makes it extremely difficult to implement the face recognition (FaceID) and fingerprint verification within the application for Social Login.
Proposed solution:
Create a HTTP POST endpoint that takes in a provider name and a provider's oauth token. It will then follow the same steps as the oauth flow where it calls the provider to verify the token and gets the user info, reconciles the users identity into an oauth account, and creates a session. This endpoint will be private.
POST /oauth/:providerName/import
providerName can be any of the existing supported oauth providers as it won't need any additional provider specific implementation.