Триггеры аутентификации Firebase

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

Дополнительные примеры вариантов использования см. в разделе «Что я могу делать с помощью Cloud Functions ?». .

Запуск функции при создании пользователя

Вы можете создать функцию, которая срабатывает при создании пользователя Firebase , используя обработчик событий functions.auth.user().onCreate() :

exports.sendWelcomeEmail = functions.auth.user().onCreate((user) => {
  // ...
});

Учетные записи Firebase будут запускать события создания пользователей для Cloud Functions если:

  • Пользователь создает учетную запись электронной почты и пароль.
  • Пользователь впервые входит в систему с помощью федеративного поставщика удостоверений.
  • Разработчик создает учетную запись с помощью Admin SDK.
  • Пользователь впервые входит в новый анонимный сеанс аутентификации.

Событие Cloud Functions не запускается, когда пользователь входит в систему в первый раз, используя собственный токен.

Доступ к атрибутам пользователя

Из пользовательских данных, возвращаемых вашей функции, вы можете получить доступ к списку пользовательских атрибутов, доступных в объекте UserRecord вновь созданного пользователя. Например, вы можете получить адрес электронной почты и отображаемое имя пользователя, как показано:

const email = user.email; // The email of the user.
const displayName = user.displayName; // The display name of the user.

Запуск функции при удалении пользователя

Точно так же, как вы можете активировать функцию при создании пользователя, вы можете реагировать на события удаления пользователя. Используйте обработчик событий functions.auth.user().onDelete() как показано:

exports.sendByeEmail = functions.auth.user().onDelete((user) => {
  // ...
});

Функции блокировки триггеров

Если вы перешли на Firebase Authentication with Identity Platform , вы можете расширить Firebase Authentication заблокировав Cloud Functions .

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