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

Kullanıcılarınızın e-posta adreslerini ve şifrelerini kullanarak Firebase ile kimlik doğrulaması yapmasına izin vermek için Firebase Kimlik Doğrulamasını kullanabilirsiniz.

Sen başlamadan önce

  1. Henüz yapmadıysanız Başlangıç ​​kılavuzundaki adımları izleyin.

  2. E-posta/Şifreyle 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/şifreyle oturum açma yöntemini etkinleştirin ve Kaydet'i tıklayın.

Şifre 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 tüm yeni hesap doğrulama adımlarını tamamlayın.

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

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

Bir kullanıcıyı e-posta adresi ve şifreyle oturum açın

Bir kullanıcıyı parolayla oturum açma adımları, yeni hesap oluşturma adımlarına benzer. Uygulamanızın oturum açma ekranındansignInWithEmailAndPassword signInWithEmailAndPassword() öğesini ç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 hangi oturum açma yöntemini kullandığına bakılmaksızın, projenizdeki her uygulamada bir kullanıcıyı tanımlamak için kullanılabilir.

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

Firebase Gerçek Zamanlı Veritabanı ve Bulut Depolama Güvenliği Kurallarınızda, oturum açan kullanıcının benzersiz kullanıcı kimliğini auth değişkeninden alabilir ve bunu, 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 fazla 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() öğesini çağırın:

await FirebaseAuth.instance.signOut();