У меня есть API аутентификации .Net Core с OpenIddict и клиентом .Net Core Api. Сейчас я создаю собственное приложение для Ionic 3 и хочу реализовать вход в систему через Facebook, при котором люди могут входить в систему через родное приложение Facebook. Пока что я нашел только примеры, в которых используется веб вход в Facebook.
Пока у меня есть:
- рабочий .Net Core Auth API, который возвращает токены Jwt
- рабочий API клиента .Net Core, который принимает эти токены JWT
- рабочее приложение Ionic 3, которое может войти в систему с именем пользователя + паролем, получить токен и использовать его.
- работающее приложение Ionic 3 с входом в Facebook, которое входит в систему через родное приложение Facebook (через плагин Cordova)
Кажется, что поток кода - это правильный путь, но все примеры перенаправляют на страницу входа в Facebook web, поэтому пользователю, вероятно, все равно придется войти в Facebook, в то время как его родное приложение Facebook уже вошло в систему .
Мой вопрос: как я могу получить токен JWT из OpenIddict Auth Api, чтобы я мог использовать свой клиентский API, после того, как пользователь вошел в систему через Facebook в моем приложении Ionic? Или мне следует как-то изменить поток, когда для входа в систему используется собственное приложение Facebook?
обновление: в Ionic я получаю UserId Facebook, который равен AspNetUserLogins.ProviderKey. Достаточно ли это безопасно для входа в ваш Api?