Как создать пользователей без электронной почты в firebase? - PullRequest
0 голосов
/ 16 сентября 2018

Я создаю мобильное приложение для компании с несколькими сотрудниками. Каждый сотрудник имеет уникальный идентификатор сотрудника, который можно использовать в качестве идентификатора их учетной записи. Я хотел бы знать, как я могу создать этих пользователей в firebase, используя их идентификатор сотрудника в качестве имени пользователя / идентификатора в качестве предустановленного пароля.

Что-то вроде:

[
  {
    "emp_id": 123, //Login username
    "passwordHash": "LKWrHLwsFlbY4AylsPQ", //Password
    "name": "John Doe"
  },
  {
    "emp_id": 456,
    "passwordHash": "ZQXyTXf8EXlAWX1f",
    "name": "Jane Doe"
  }
]

Сотрудники будут иметь идентификатор для входа в систему, который никогда не изменится, и пароль, который они могут изменить по своему желанию. Нет возможности зарегистрироваться / зарегистрироваться. Любой новый сотрудник будет добавлен вручную администратором.

Как настроить этот тип метода аутентификации в firebase? Кажется, они заставляют свои собственные системы аутентификации (которые аккуратны и все, но не то, что мне нужно)

1 Ответ

0 голосов
/ 16 сентября 2018

В Firebase нет встроенной поддержки для входа, используя только имя пользователя и пароль.Самое близкое, что вы можете получить со встроенными провайдерами, - это создать учетные записи с поддельными адресами электронной почты, такими как 123@company.com.Но это не так идеально, так как предполагается, что вы можете отправлять электронные письма для сброса пароля для учетных записей электронной почты и паролей.

Поскольку ни один из встроенных провайдеров идентификации не делает то, что вам нужно, вам нужно создать пользовательскийпровайдер аутентификации для этого.Для этого необходимо, чтобы вы могли запускать код для чеканки токенов в доверенной среде, например, на вашей машине разработки, на сервере, которым вы управляете, или в облачных функциях для Firebase.

Например, пользовательский поставщик, реализующий имя пользователя+ аутентификация по паролю в облачных функциях, посмотрите на эту страницу в function-samples репо .

...