Özel Bir Kimlik Doğrulama Sistemi Kullanarak Firebase ile Kimlik Doğrulama

Bir kullanıcı başarıyla oturum açtığında özel imzalı belirteçler üretmek için kimlik doğrulama sunucunuzu değiştirerek Firebase Kimlik Doğrulamayı özel bir kimlik doğrulama sistemiyle entegre edebilirsiniz. Uygulamanız bu jetonu alır ve Firebase ile kimlik doğrulaması yapmak için kullanır.

Sen başlamadan önce

  1. Henüz yapmadıysanız, Başlarken kılavuzundaki adımları izleyin.
  2. Firebase Admin SDK'sını kurun ve yapılandırın . SDK'yı Firebase projeniz için doğru kimlik bilgileriyle başlattığınızdan emin olun.

Firebase ile kimlik doğrulaması yapın

  1. Kullanıcılar uygulamanızda oturum açtığında, oturum açma kimlik bilgilerini (örneğin, kullanıcı adları ve parolaları) kimlik doğrulama sunucunuza gönderin. Sunucunuz kimlik bilgilerini kontrol eder ve geçerliyse özel bir Firebase jetonu oluşturur ve jetonu uygulamanıza geri gönderir.

  2. Kimlik doğrulama sunucunuzdan özel belirteci aldıktan sonra, kullanıcıda oturum açmak için bunu signInWithCustomToken() :

    try {
        final userCredential =
            await FirebaseAuth.instance.signInWithCustomToken(token);
        print("Sign-in successful.");
    } on FirebaseAuthException catch (e) {
        switch (e.code) {
            case "invalid-custom-token":
                print("The supplied token is not a Firebase custom auth token.");
                break;
            case "custom-token-mismatch":
                print("The supplied token is for a different Firebase project.");
                break;
            default:
                print("Unkown error.");
        }
    }
    

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();