Firebase 인증 트리거

Firebase 사용자 계정 생성 및 삭제에 대한 응답으로 함수를 트리거할 수 있습니다. 예를 들어 앱에 방금 계정을 만든 사용자에게 환영 이메일을 보낼 수 있습니다. 이 페이지에서는 계정을 생성하거나 삭제한 데 대한 응답으로 환영 이메일과 작별 이메일을 보내는 샘플을 확인할 수 있습니다.

사용 사례의 예시를 더 보려면 Cloud Functions로 무엇을 할 수 있나요?를 참조하세요.

사용자 생성 시 함수 트리거

functions.auth.user().onCreate() 이벤트 핸들러를 사용하여 Firebase 사용자가 생성될 때 트리거되는 함수를 만들 수 있습니다.

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

Firebase 계정은 다음과 같은 경우에 Cloud Functions의 사용자 생성 이벤트를 트리거합니다.

  • 사용자가 이메일 계정과 비밀번호를 만들 때
  • 사용자가 제휴 ID 공급업체를 통해 처음으로 로그인할 때
  • 개발자가 Firebase 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) => {
  // ...
});

차단 함수 트리거

Identity Platform을 사용한 Firebase 인증으로 업그레이드했다면 Cloud Functions 차단을 통해 Firebase 인증을 확장할 수 있습니다.

차단 함수를 사용하면 사용자가 앱에 등록하거나 로그인한 결과를 수정하는 커스텀 코드를 실행할 수 있습니다. 예를 들어 사용자가 특정 기준을 충족하지 않는 경우 인증하지 못하도록 하거나 클라이언트 앱으로 반환하기 전에 사용자 정보를 업데이트할 수 있습니다.