Firebase Authenticationトリガーを使う

公開日時

Firebase Authで認証機能を実装する際に、ユーザ登録完了時にサーバ側で処理を行いたい場合がある。

そんな時はCloud Functionsの「Firebase Authentication トリガー」が使える。

先日試したfirestore-stripe-subscriptionsのFirebase Authenticationトリガー実装を参考に、ユーザ登録完了時にStripeユーザを作成するようにした。

import * as functions from 'firebase-functions'
import { createCustomerRecord } from '../util/customer'

const createCustomer = functions
  .region('asia-northeast1')
  .auth.user()
  .onCreate(
    async (user): Promise<void> => {
      const { email, uid } = user

      // Stripe APIでcustomerを作成し、Firestoreに書き込む
      await createCustomerRecord({ email, uid })
    }
  )

export default createCustomer

Related #firebase

Firestoreの複合インデックスを削除する

CLI経由で削除する必要があった

Firebase Web SDK v9

_this.auth.addAuthTokenListener is not a function

8.6.5にダウングレードした

Firebase Summit 2021