Flutter'da Parola Tabanlı Hesapları kullanarak Firebase ile kimlik doğrulaması yapın

Kullanıcılarınızın e-posta adreslerini ve parolaları kullanarak Firebase ile kimlik doğrulaması yapmasına izin vermek için Firebase Authentication'ı kullanabilirsiniz.

Sen başlamadan önce

  1. Henüz yapmadıysanız, Başlarken kılavuzundaki adımları izleyin.

  2. E-posta/Parola ile oturum açmayı etkinleştirin:

    • Firebase konsolunun Kimlik Doğrulama bölümünde, Oturum açma yöntemi sayfasını açın.
    • Oturum açma yöntemi sayfasından E-posta/parola ile oturum açma yöntemini etkinleştirin ve Kaydet 'i tıklayın.

Parola tabanlı bir hesap oluşturun

Parolayla yeni bir kullanıcı hesabı oluşturmak için createUserWithEmailAndPassword() yöntemini çağırın:

try {
  final credential = await FirebaseAuth.instance.createUserWithEmailAndPassword(
    email: emailAddress,
    password: password,
  );
} on FirebaseAuthException catch (e) {
  if (e.code == 'weak-password') {
    print('The password provided is too weak.');
  } else if (e.code == 'email-already-in-use') {
    print('The account already exists for that email.');
  }
} catch (e) {
  print(e);
}

Genellikle bunu uygulamanızın kayıt ekranından yaparsınız. Yeni bir kullanıcı uygulamanızın kayıt formunu kullanarak kaydolduğunda, yeni hesabın şifresinin doğru yazıldığını ve karmaşıklık gereksinimlerinizi karşıladığını doğrulamak gibi uygulamanızın gerektirdiği yeni hesap doğrulama adımlarını tamamlayın.

Yeni hesap başarıyla oluşturulduysa, kullanıcı da oturum açmıştır. Kimlik doğrulama durumundaki değişiklikleri dinliyorsanız, dinleyicilerinize yeni bir olay gönderilecektir.

Yeni bir hesap oluşturmanın devamı olarak , Kullanıcının e-posta adresini doğrulayabilirsiniz .

Bir e-posta adresi ve şifre ile bir kullanıcı oturum açın

Bir kullanıcının parola ile oturum açma adımları, yeni bir hesap oluşturma adımlarına benzer. Uygulamanızın oturum açma ekranından signInWithEmailAndPassword() çağırın:

try {
  final credential = await FirebaseAuth.instance.signInWithEmailAndPassword(
    email: emailAddress,
    password: password
  );
} on FirebaseAuthException catch (e) {
  if (e.code == 'user-not-found') {
    print('No user found for that email.');
  } else if (e.code == 'wrong-password') {
    print('Wrong password provided for that user.');
  }
}

Sonraki adımlar

Bir kullanıcı yeni bir hesap oluşturduktan sonra bu hesap, Firebase projenizin bir parçası olarak depolanır ve kullanıcının kullandığı oturum açma yönteminden bağımsız olarak projenizdeki her uygulamada bir kullanıcıyı tanımlamak için kullanılabilir.

Uygulamalarınızda, User nesnesinden kullanıcının temel profil bilgilerini alabilirsiniz. Kullanıcıları Yönetme konusuna bakın.

Firebase Gerçek Zamanlı Veritabanınız ve Bulut Depolama Güvenlik Kurallarınızda, oturum açmış kullanıcının benzersiz kullanıcı kimliğini auth değişkeninden alabilir ve bunu bir kullanıcının hangi verilere erişebileceğini kontrol etmek için kullanabilirsiniz.

Kimlik doğrulama sağlayıcısı kimlik bilgilerini ) mevcut bir kullanıcı hesabına bağlayarak , kullanıcıların birden çok kimlik doğrulama sağlayıcısı kullanarak uygulamanızda oturum açmasına izin verebilirsiniz.

Bir kullanıcının oturumunu kapatmak için signOut() çağırın:

await FirebaseAuth.instance.signOut();