Несколько учетных записей FireBase созданы при входе в Google - PullRequest
0 голосов
/ 19 ноября 2018

Наше приложение (Electron) поддерживается firebase для аутентификации, где у нас включено два метода аутентификации;а именно: Email и Google Accounts.

При аутентификации в Google мы открываем окно браузера не-Electron и предоставляем необходимые redirect_uri.Сервис http предоставляется нашим приложением Electron, которое прослушивает Google authentication code.Как только код получен, мы делаем запрос на authentication token и используем его для дальнейшей генерации учетных данных, необходимых для входа в наш проект firebase.

Все во время нашего тестирования работало правильно, однако мы видим, чтопроблема, из-за которой небольшое количество новых учетных записей создает несколько учетных записей в firebase, все со своими уникальными uid.

Дополнительные замечания:

  • FirebaseПроект настроен на разрешение только одной учетной записи на один адрес электронной почты
  • Firebase версия 5.4.2

Функция входа в систему

Один размы извлекаем токен, следующая функция отвечает за вход пользователя в систему.

public async googleLogin(credentials) {
  try {
    const googleCred = firebase.auth.GoogleAuthProvider.credential(credentials.id_token);
    await firebase.auth().signInAndRetrieveDataWithCredential(googleCred);
    // auth successful, firebase.auth().onAuthStateChanged() will fire
  } catch (err) {
    // authentication error.
  }
}

Количество учетных записей, созданных на один адрес Google, различается (на данный момент мы видели от 2 до 7 различных пользовательских идентификаторовдля одной учетной записи Google).

Не уверен, что может быть причиной этого с нашей стороны, но если у кого-то есть какие-либо идеи, это будет с благодарностью.

Примечание. Я также написал в службу поддержки Firebase и обновлю вопрос (или опубликую ответ), когда нам удастся решить эту проблему.

...