1

사용자가 Firebase로 가입하기 전에 이메일 주소를 확인하려면 어떻게해야합니까? 이메일 주소가 .sendEmailVerification으로 확인되었지만 현재 사용자에게만 적용됩니다. 따라서 사용자는 확인 이메일을 보내기 전에 이미 만들어져 있어야합니다. 이것은 분명히 데이터베이스에 추가하기 전에 이메일을 확인해야하므로 많은 도움이되지는 않을 것입니다. 따라서 좋은 해결 방법은 무엇입니까?SignUp의 Firebase 이메일 확인

답변

2

Firebase Auth에 가입하기 전에 이메일을 확인할 수 없습니다. 이메일 확인이 항상 필요한 것은 아닙니다. 이것이 Firebase Auth가 사용자에게 제공하는 방법입니다. 일부 응용 프로그램은 가입시 전자 메일 확인을 필요로하지 않으며, 다른 사용자는 선택 사항으로 설정할 수 있으며 다른 사용자는 확인되지 않은 사용자에게 제한된 액세스 권한을 제공 할 수 있습니다.

응용 프로그램 내용에 액세스하기 전에 사용자의 확인을 요구하려면 다음을 수행 할 수 있습니다. 다음 중 하나를 ".read": "auth.token.email_verified === true"

또는 당신이 당신의 자신의 백엔드를 사용하는 경우, 중포 기지 관리 SDK, https://firebase.google.com/docs/auth/admin/verify-id-tokens을 사용 :

admin.auth().verifyIdToken(idToken).then(decodedToken => { 
    if (decodedToken.email_verified) { 
    // Email verified. Grant access. 
    } else { 
    // Email not verified. Ask user to verify email. 
    } 
}); 
+0

은 그래서 할 수있는 사용자가 결정하는 경우 는 중포 기지 규칙, 예를 통해 그 시행 가입을 취소, 그냥 befo 이미 이메일을 검증하기 위해 Firebase에 사용자를 만들었습니다. 이미 생성되고 검증되지 않은 계정으로 무엇을해야합니까? 나는 그 대답이 내가 원하는 무엇이든지를 안다.) 그러나 사용자가 동일한 이메일 주소로 돌아올 수있는 경우에 가장 좋은 접근법은 무엇인가? –

+0

자체 정리 스크립트를 작성할 수 있습니다. Firebase Admin SDK는'listUsers' (모든 사용자 조회)와'deleteUser' ('uid'로 사용자 삭제)에 대한 API를 제공합니다. 모든 사용자를 나열하고'emailVerified'가 거짓이고 생성 시간이 너무 오래되었는지 확인한 후 해당 사용자를 삭제하는 반복 스크립트를 가질 수 있습니다. – bojeil