잘못된 비밀번호 또는 등록되지 않은 이메일을 입력했을 때 예상된 "auth/wrong-password" 또는 "auth/user-not-found" 에러 코드 대신 "auth/invalid-credential" 에러가 발생한다는 문제점을 설명하고 있습니다.
signInWithEmailAndPassword 메서드는 이메일과 비밀번호를 사용하여 로그인을 시도하지만, 발생하는 에러 메시지는 올바르지 않습니다.
예상되는 에러 코드는 "auth/wrong-password" (잘못된 비밀번호) 또는 "auth/user-not-found" (등록되지 않은 사용자) 이지만 "auth/invalid-credential" (유효하지 않은 인증 정보) 에러가 발생합니다.
const handleSignIn = async () => {
try {
await signInWithEmailAndPassword(auth, email, password);
} catch (error) {
console.error('Sign in error:', error);
}
};
https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection?hl=ko
이메일 열거 보호란 무엇인가요?
이메일 열거는 악의적인 행위자가 API에 이메일 주소를 전달하고 응답을 확인하여 시스템의 사용자를 추측하거나 확인하는 무차별 대입 공격의 한 유형입니다. 이메일 열거 보호가 없으면 이러한 공격으로부터 시스템을 보호하기 어려울 수 있습니다.
이메일 열거 보호를 사용하면 어떤 이점이 있나요?
시스템의 사용자 계정을 악의적인 행위자로부터 보호합니다.
무차별 대입 공격으로 인한 로그인 시도를 줄입니다.
시스템의 보안을 향상시킵니다.
이메일 열거 보호를 사용 설정하면 어떻게 됩니까?
시스템에서 fetchSignInForEmail API, createAuthUri REST API 또는 fetchSignInMethodsForEmail 클라이언트 SDK 메서드를 사용하여 이메일 주소를 확인하는 기능이 비활성화됩니다.
사용자는 이메일 주소를 변경하기 전에 먼저 새 주소를 확인해야 합니다.
이메일/비밀번호 제공업체를 기존 사용자 계정에 연결하는 기능이 제한됩니다.
비밀번호 재설정 또는 이메일 변경 요청 시 확인 이메일이 전송됩니다.
이메일 열거 보호를 사용 설정하는 방법은 무엇인가요?
2023년 9월 15일 이후에 만든 프로젝트의 경우 이메일 열거 보호가 기본적으로 사용 설정됩니다.
이전 프로젝트의 경우 Firebase 콘솔이나 gcloud 명령줄 도구를 사용하여 이메일 열거 보호를 사용 설정할 수 있습니다.
이메일 열거 보호를 사용 중지하는 방법은 무엇인가요?
중요: 이메일 열거 보호를 사용 중지하는 것은 권장하지 않습니다.
이메일 열거 보호를 사용 중지하면 시스템이 악의적인 공격에 취약해질 수 있습니다.
이전 프로젝트의 경우 Firebase 콘솔이나 gcloud 명령줄 도구를 사용하여 이메일 열거 보호를 사용 중지할 수 있습니다.