Как использовать Firebase Authentication с Okta? - PullRequest
0 голосов
/ 05 апреля 2020

В настоящее время я использую проверку подлинности Firebase в своем приложении, используя встроенные поставщики OID C (Google, Facebook et c.). Можно ли использовать Okta в качестве дополнительного поставщика OID C с минимальными изменениями в моем приложении, то есть Okta должна вести себя так же, как и любой другой встроенный поставщик? Firebase Auth apis, такой как firebase.auth().currentUser и firebase.auth().onAuthStateChanged(), все еще должен работать.

Страница do c для Пользовательская аутентификация говорит о получении пользовательского токена с сервера аутентификации, но не уточняет, является ли это токеном доступа OAuth. Есть ли пример интеграции Okta или обобщенной c OID C интеграции, которая без проблем работает с аутентификацией Firebase?

1 Ответ

1 голос
/ 05 апреля 2020

Нет встроенного поставщика Okta для аутентификации Firebase, но если у вас есть для него существующий поток аутентификации, его довольно легко интегрировать в Firebase как пользовательский поставщик .

Это 6-шаговый процесс:

  1. Вы собираете учетные данные пользователя на клиенте.
  2. Эти учетные данные передаются в доверенную среду, либо на сервер, которым вы управляете, либо в облачные функции.
  3. На сервере вы проверяете правильность учетных данных в соответствии с Okta, обычно вызывая API на стороне сервера, который они предоставляют с предоставленным вами ключом.
  4. Затем вы используете результаты этого вызова чеканьте новый токен ID для пользователя. Это JWT, а не токен доступа OAuth.
  5. Вы передаете этот токен ID с сервера клиенту.
  6. Затем клиент вызывает firebase.auth().signInWithCustomToken(token) с идентификационный токен, чтобы войти в Firebase Authentication.
...