Google is committed to advancing racial equity for Black communities. See how.
Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

Özel Bir Kimlik Doğrulama Sistemi Kullanarak iOS'ta Firebase ile Kimlik Doğrulama

Bir kullanıcı başarıyla oturum açtığında, kimlik doğrulama sunucunuzu özel imzalı jetonlar üretecek şekilde değiştirerek Firebase Authentication'ı özel bir kimlik doğrulama sistemi ile entegre edebilirsiniz. Uygulamanız bu jetonu alır ve Firebase ile kimlik doğrulaması için kullanır.

Sen başlamadan önce

  1. Firebase'i iOS projenize ekleyin .
  2. Pod Podfile şu kapsülleri ekleyin:
    pod 'Firebase/Auth'
    
  3. Projenizin sunucu anahtarlarını alın:
    1. Projenizin ayarlarında Hizmet Hesapları sayfasına gidin.
    2. Hizmet Hesapları sayfasının Firebase Admin SDK bölümünün altındaki Yeni Özel Anahtar Oluştur'u tıklayın.
    3. Yeni hizmet hesabının genel / özel anahtar çifti otomatik olarak bilgisayarınıza kaydedilir. Bu dosyayı kimlik doğrulama sunucunuza kopyalayın.

Firebase ile kimlik doğrulama

  1. Sizin de Firebase modülü içe UIApplicationDelegate :

    Swift

    import Firebase

    Amaç-C

    @import Firebase;
  2. Genellikle uygulamanızın uygulamasında bir FirebaseApp paylaşılan örneği yapılandırın application:didFinishLaunchingWithOptions: yöntem:

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Amaç-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. Kullanıcılar uygulamanızda oturum açtıklarında, oturum açma kimlik bilgilerini (örneğin, kullanıcı adı ve şifreleri) kimlik doğrulama sunucunuza gönderin. Sunucunuz kimlik bilgilerini kontrol eder ve geçerliyse özel bir belirteç döndürür.
  4. Kimlik doğrulama sunucunuzdan özel belirteci aldıktan sonra, kullanıcıda oturum signInWithCustomToken için bunu signInWithCustomToken :

    Swift

    Auth.auth().signIn(withCustomToken: customToken ?? "") { (user, error) in
      // ...
    }

    Amaç-C

    [[FIRAuth auth] signInWithCustomToken:customToken
                               completion:^(FIRAuthDataResult * _Nullable authResult,
                                            NSError * _Nullable error) {
      // ...
    }];

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ı kimlik bilgilerine (yani kullanıcı adı ve parolası, telefon numarası veya kimlik doğrulama sağlayıcı bilgileri) bağlanır. 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, FIRUser nesnesinden kullanıcının temel profil bilgilerini FIRUser . Bkz. Kullanıcıları Yönet .

  • Firebase Realtime Database ve Cloud Storage Güvenlik Kurallarınızda , oturum auth kullanıcının benzersiz kullanıcı kimliğini auth değişkeninden alabilir ve bir kullanıcının hangi verilere erişebileceğini kontrol etmek için kullanabilirsiniz.

Yetkilendirme sağlayıcı 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: arayın.

Swift

    let firebaseAuth = Auth.auth()
do {
  try firebaseAuth.signOut()
} catch let signOutError as NSError {
  print ("Error signing out: %@", signOutError)
}
  

Amaç-C

    NSError *signOutError;
BOOL status = [[FIRAuth auth] signOut:&signOutError];
if (!status) {
  NSLog(@"Error signing out: %@", signOutError);
  return;
}

Ayrıca tüm kimlik doğrulama hataları için hata işleme kodu eklemek isteyebilirsiniz. Bkz. Hataları İşleme .