Apple platformlarında reCAPTCHA Enterprise ile Uygulama Kontrolü'nü kullanmaya başlama

Platform seçin: iOS+ Android Web Flutter


Bu sayfada, reCAPTCHA Enterprise sağlayıcısını kullanarak Apple platformları uygulamasında App Check'yı nasıl ayarlayacağınız gösterilmektedir. App Check, projenizin arka uç kaynaklarına yalnızca uygulamanızın erişebilmesini sağlar. Daha fazla bilgi edinmek için App Check'a genel bakış başlıklı makalemizi inceleyin.

App Check, puan tabanlı reCAPTCHA anahtarların kullanılmasını gerektirir. Bu nedenle, kullanıcılar tarafından görülemez. Bu, reCAPTCHA Enterprise sağlayıcının kullanıcılardan herhangi bir zamanda zorluk çözmelerini istemeyeceği anlamına gelir.

Kullanım alanınızda reCAPTCHA Enterprise tarafından uygulanmayan App Check özellikleri gerekiyorsa veya App Check'yi kendi özel sağlayıcınızla kullanmak istiyorsanız Özel bir App Check sağlayıcısı uygulama başlıklı makaleyi inceleyin.

1. Firebase projenizi ayarlama

  1. Henüz yapmadıysanız Firebase'i Apple projenize ekleyin.

  2. Google Cloud konsolunda Sahtekarlığa Karşı Koruma sayfasına gidin ve reCAPTCHA Enterprise sağlayıcısı için aşağıdakileri yapın:

    1. Doğru projede olduğunuzdan emin olun (ekranın üst kısmındaki proje seçiciye bakın).

    2. İstenirse reCAPTCHA Enterprise API'yi etkinleştirin.

    3. iOS türünde bir anahtar oluşturun ve uygulamanızın paket kimliğini (örneğin, com.example.my_app) belirtin.

      • Firebase projenizde Firebase Apple uygulamanızı oluştururken sağladığınız paket kimliğini girdiğinizden emin olun. Paket kimliği değeri büyük/küçük harfe duyarlıdır.

      • App Check için her paket kimliği yalnızca tek bir reCAPTCHA anahtarıyla eşleşebilir.

      Ayrıntılı talimatlar için Puan tabanlı reCAPTCHA anahtarları oluşturma başlıklı makaleyi inceleyin.

    4. Bu anahtarı not edin. Bu kodu Firebase konsolundaki kayıt akışına eklemeniz gerekir.

  3. Firebase konsolunda Güvenlik > App Check'e gidin.

  4. Uygulamalar sekmesinde, Apple platformu uygulamalarınızı App Check reCAPTCHA Enterprise sağlayıcısıyla kullanmak üzere kaydedin. Google Cloud konsolunda aldığınız anahtarı sağlamanız gerekir.

  5. İsteğe bağlı: Jetonun geçerlilik süresini (TTL) ayarlayın.

    Uygulama kaydı ayarlarında, sağlayıcı tarafından verilen App Check jetonları için özel bir geçerlilik süresi (TTL) ayarlayın. TTL'yi 30 dakika ile 7 gün arasında herhangi bir değere ayarlayabilirsiniz. Bu değeri değiştirirken aşağıdaki denge unsurlarına dikkat edin:

    • Güvenlik: Sızdırılmış veya ele geçirilmiş bir jetonun saldırgan tarafından kötüye kullanılabileceği süreyi kısalttığı için daha kısa TTL'ler daha güçlü güvenlik sağlar.
    • Performans: Daha kısa TTL'ler, uygulamanızın doğrulama işlemini daha sık yapacağı anlamına gelir. Uygulama onayı işlemi her gerçekleştirildiğinde ağ isteklerine gecikme eklediğinden kısa bir TTL, uygulamanızın performansını etkileyebilir.
    • Kota ve maliyet: Daha kısa TTL'ler ve sık yeniden onaylama, kotanızı daha hızlı tüketir ve ücretli hizmetlerde daha fazla maliyete neden olabilir. Kotalar ve sınırlar başlıklı makaleyi inceleyin.

    Varsayılan TTL değeri olan 1 saat çoğu uygulama için uygundur. App Check kitaplığının, TTL süresinin yaklaşık yarısında jetonları yenilediğini unutmayın.

  6. İsteğe bağlı: Gelişmiş ayarları yapılandırın.

  7. Kaydet'i tıklayın.

(İsteğe bağlı) Gelişmiş ayarları yapılandırma

Bir kullanıcı uygulamanızı açtığında reCAPTCHA Enterprise, temel pozlar altındaki kullanıcı etkileşiminin risk düzeyini değerlendirir ve 0,1 artışlarla 0,0 ile 1,0 arasında bir puan döndürür.

  • 0,0 puan, etkileşimin yüksek risk taşıdığını ve sahtekarlık içerebileceğini gösterir.
  • 1,0 puanı, etkileşimin düşük risk taşıdığını ve çok büyük olasılıkla meşru olduğunu gösterir.

App Check, uygulama riski eşiği yapılandırmanıza olanak tanır. Böylece bu riske karşı toleransınızı ayarlayabilirsiniz.

Çoğu kullanım alanı için varsayılan eşik değeri olan 0, 5 önerilir. Kullanım alanınızda ayarlama yapılması gerekiyorsa bu değeri Firebase Console'da uygulamalarınızın her biri için yapılandırabilirsiniz (Güvenlik > Uygulama Kontrolü'ne gidin). Aşağıdaki uygulama riski eşiğini yapılandırmayla ilgili önemli noktaları inceleyin.

2. App Check SDK'sını uygulamanıza ekleyin.

Firebase bağımlılıklarını yüklemek ve yönetmek için Swift Package Manager'ı (SPM) kullanın. Firebase'i zaten kullanıyorsanız Firebase paketinizin v12.17.0 veya sonraki bir sürüm olduğundan emin olun.

  1. Xcode'da uygulama projenizi açın.

  2. Firebase kitaplığını ekleyin:

    1. Dosya > Paket Ekle'ye gidin.

    2. İstendiğinde Firebase Apple platformları SDK deposunu ekleyin:

      https://github.com/firebase/firebase-ios-sdk
      
    3. En yeni SDK sürümünü (v12.17.0 veya daha yeni bir sürüm) seçin.

    4. FirebaseAppCheck kitaplığını seçin.

    5. Paket Ekle'yi tıklayın. Xcode, bağımlılıkları çözüp indirir.

    6. İstendiğinde kitaplığı uygulama hedefinize ekleyin.

  3. reCAPTCHA Enterprise kitaplığını ekleyin:

    1. File > Add Packages'a (Dosya > Paket Ekle) geri dönün.

    2. İstendiğinde reCAPTCHA Enterprise SDK deposunu ekleyin:

      https://github.com/GoogleCloudPlatform/recaptcha-enterprise-mobile-sdk
      
    3. RecaptchaEnterprise kitaplığını seçin.

    4. Paket Ekle'yi tıklayın. İstendiğinde kitaplığı uygulama hedefinize ekleyin.

3. App Check başlatılıyor

Uygulamanızda diğer Firebase hizmetlerini kullanmadan önce App Check başlatmanız gerekir.

RecaptchaProviderFactory anahtarınızıreCAPTCHA ileterek RecaptchaProviderFactory örneği oluşturun ve ardından App Check'ı bu örneği kullanacak şekilde yapılandırın:

let providerFactory = RecaptchaProviderFactory(siteKey: "SITE_KEY")
AppCheck.setAppCheckProviderFactory(providerFactory)

FirebaseApp.configure()

4. Metrikleri izleme ve yaptırımı etkinleştirme

Uygulamanızda App Check ayarlarını yaptıktan sonra güncellenen uygulamayı kullanıcılarınıza dağıtmaya başlayın.

Güncellenen istemci uygulaması, Firebase'e yaptığı her istekle birlikte App Check jetonları göndermeye başlar. Ancak App Check, App Check zorunlu kılınana kadar geçersiz jeton içeren istekleri engellemez.

Metrikleri izleme

Yaptırımı etkinleştirmeden önce, bu işlemin mevcut meşru kullanıcılarınızı etkilemeyeceğinden emin olun. Ancak, uygulama kaynaklarınızın şüpheli bir şekilde kullanıldığını görüyorsanız yaptırımı daha erken etkinleştirmek isteyebilirsiniz.

Bu kararı vermenize yardımcı olması için kullandığınız hizmetlerle ilgili App Check metriklerini inceleyebilirsiniz:

App Check yaptırım özelliğini etkinleştirme

App Check özelliğinin kullanıcılarınızı nasıl etkileyeceğini anladığınızda ve devam etmeye hazır olduğunuzda App Check yaptırımını etkinleştirebilirsiniz:

Hata ayıklama ortamlarında App Check kullanma

App Check, geliştirme sırasında bir emülatör / simülatörden veya sürekli entegrasyon (CI) ortamından gelen istekler gibi bazı ortamları geçersiz olarak sınıflandırır.

App Check zorunlu kılındıktan sonra uygulamanızı bu tür ortamlarda çalıştırmak için uygulamanızın üretim tasdik sağlayıcısı yerine App Check hata ayıklama sağlayıcısını kullanan bir hata ayıklama derlemesini oluşturmanız gerekir.

Daha fazla bilgi için Apple platformlarında hata ayıklama sağlayıcısıyla App Check kullanma başlıklı makaleyi inceleyin.

Fiyatlandırma

App Check, uygulamanız App Check jetonunu her yenilediğinde kullanıcının yanıt jetonunu doğrulamak için sizin adınıza bir değerlendirme oluşturur. Ücretsiz kota üzerinde oluşturulan her değerlendirme için Firebase projenizden ücret alınır. Ayrıntılı bilgi için reCAPTCHA fiyatlandırması başlıklı makaleyi inceleyin.

Uygulamanız, varsayılan olarak bu jetonu her 1 saatte iki kez yeniler. Uygulamanızın App Check jetonlarını ne sıklıkta yenileyeceğini (ve dolayısıyla yeni değerlendirmelerin ne sıklıkta oluşturulacağını) kontrol etmek için jeton TTL'sini yapılandırabilirsiniz.