Javascript kullanarak 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 olanak sağlamak ve uygulamanızın şifre tabanlı hesaplarını yönetmek için Firebase Kimlik Doğrulamasını kullanabilirsiniz.

Sen başlamadan önce

  1. Firebase'i JavaScript projenize ekleyin .
  2. Uygulamanızı henüz Firebase projenize bağlamadıysanız bunu Firebase konsolundan yapın.
  3. E-posta/Şifreyle oturum açmayı etkinleştirin:
    1. Firebase konsolunda Kimlik Doğrulama bölümünü açın.
    2. Oturum açma yöntemi sekmesinde, E-posta/şifreyle oturum açma yöntemini etkinleştirin ve Kaydet'e tıklayın.

Şifre tabanlı bir hesap oluşturun

Şifreli yeni bir kullanıcı hesabı oluşturmak için uygulamanızın kayıt sayfasında aşağıdaki adımları tamamlayın:

  1. 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.
  2. Yeni kullanıcının e-posta adresini ve şifresini createUserWithEmailAndPassword ileterek yeni bir hesap oluşturun:

    Web modular API

    import { getAuth, createUserWithEmailAndPassword } from "firebase/auth";
    
    const auth = getAuth();
    createUserWithEmailAndPassword(auth, email, password)
      .then((userCredential) => {
        // Signed up 
        const user = userCredential.user;
        // ...
      })
      .catch((error) => {
        const errorCode = error.code;
        const errorMessage = error.message;
        // ..
      });

    Web namespaced API

    firebase.auth().createUserWithEmailAndPassword(email, password)
      .then((userCredential) => {
        // Signed in 
        var user = userCredential.user;
        // ...
      })
      .catch((error) => {
        var errorCode = error.code;
        var errorMessage = error.message;
        // ..
      });
    Yeni hesap oluşturulduysa kullanıcı otomatik olarak oturum açar. Oturum açmış kullanıcı ayrıntılarını almak için aşağıdaki Sonraki adımlar bölümüne göz atın.

    Burası aynı zamanda hataları yakalayıp yönetebileceğiniz yerdir. Hata kodlarının bir listesi için Yetkilendirme Referans Dokümanlarına bakın.

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 sayfasında aşağıdakileri yapın:

  1. Bir kullanıcı uygulamanızda oturum açtığında kullanıcının e-posta adresini ve şifresini signInWithEmailAndPassword iletin:

    Web modular API

    import { getAuth, signInWithEmailAndPassword } from "firebase/auth";
    
    const auth = getAuth();
    signInWithEmailAndPassword(auth, email, password)
      .then((userCredential) => {
        // Signed in 
        const user = userCredential.user;
        // ...
      })
      .catch((error) => {
        const errorCode = error.code;
        const errorMessage = error.message;
      });

    Web namespaced API

    firebase.auth().signInWithEmailAndPassword(email, password)
      .then((userCredential) => {
        // Signed in
        var user = userCredential.user;
        // ...
      })
      .catch((error) => {
        var errorCode = error.code;
        var errorMessage = error.message;
      });
    Oturum açmış kullanıcı ayrıntılarını almak için aşağıdaki Sonraki adımlar bölümüne göz atın.

    Burası aynı zamanda hataları yakalayıp yönetebileceğiniz yerdir. Hata kodlarının bir listesi için Yetkilendirme Referans Dokümanlarına bakın.

Önerilen: E-posta numaralandırma korumasını etkinleştirin

E-posta adreslerini parametre olarak alan bazı Firebase Kimlik Doğrulama yöntemleri, e-posta adresinin kaydedilmesi gerektiğinde kaydedilmemiş olması (örneğin, bir e-posta adresi ve şifreyle oturum açarken) veya kullanılmaması gerektiğinde kaydedilmesi (örneğin, Bir kullanıcının e-posta adresini değiştirirken). Bu, kullanıcılara belirli çözümler önermek açısından yararlı olsa da, kötü niyetli aktörler tarafından kullanıcılarınız tarafından kaydedilen e-posta adreslerinin keşfedilmesi amacıyla da kötüye kullanılabilir.

Bu riski azaltmak amacıyla projeniz için Google Cloud gcloud aracını kullanarak e-posta numaralandırma korumasını etkinleştirmenizi öneririz. Bu özelliğin etkinleştirilmesinin Firebase Authentication'ın hata raporlama davranışını değiştirdiğini unutmayın: Uygulamanızın daha spesifik hatalara dayalı olmadığından emin olun.

Sonraki adımlar

Bir kullanıcı ilk kez oturum açtıktan sonra, yeni bir kullanıcı hesabı oluşturulur ve oturum açan kullanıcının kimlik bilgileriyle (yani kullanıcı adı ve parolası, telefon numarası veya kimlik doğrulama sağlayıcı bilgileri) ilişkilendirilir. Bu yeni hesap, Firebase projenizin bir parçası olarak depolanır ve kullanıcının nasıl oturum açtığına bakılmaksızın projenizdeki her uygulamada bir kullanıcıyı tanımlamak için kullanılabilir.

  • Uygulamalarınızda kullanıcınızın kimlik doğrulama durumunu öğrenmenin önerilen yolu, Auth Doğrulama nesnesine bir gözlemci ayarlamaktır. Daha sonra 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 arayın:

Web modular API

import { getAuth, signOut } from "firebase/auth";

const auth = getAuth();
signOut(auth).then(() => {
  // Sign-out successful.
}).catch((error) => {
  // An error happened.
});

Web namespaced API

firebase.auth().signOut().then(() => {
  // Sign-out successful.
}).catch((error) => {
  // An error happened.
});