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 hizmetini 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 ile ilgili genel bakışımızı inceleyin.

App Check, puan tabanlı reCAPTCHA anahtarların kullanılmasını gerektirir. Bu anahtarlar kullanıcılar tarafından görülemez. Bu, sağlayıcının kullanıcıların herhangi bir zamanda bir sınamayı çözmesini gerektirmeyeceği anlamına gelir.reCAPTCHA Enterprise

Kullanım alanınız App Check tarafından uygulanmayan reCAPTCHA Enterprise özelliklerini gerektiriyorsa veya App Check'i 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 oluşturma

  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 (ör. com.example.my_app) belirtin.

      • Firebase projenizde Firebase Apple uygulamanızı oluştururken girdiğiniz paket kimliğini girmeniz gerekir. 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ına karşılık gelebilir.

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

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

  3. Firebase konsolunda Security (Güvenlik) > App Check (Uygulama Kontrolü) bölümüne gidin.

  4. Uygulamalar sekmesinde, reCAPTCHA Enterprise sağlayıcısıyla App Check kullanmak için Apple platformu uygulamalarınızı 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 kayıt 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 avantaj ve dezavantajları göz önünde bulundurun:

    • Güvenlik: Daha kısa TTL'ler daha güçlü güvenlik sağlar. Çünkü sızdırılan veya ele geçirilen bir jetonun saldırgan tarafından kötüye kullanılabileceği süreyi kısaltır.
    • Performans: Daha kısa TTL'ler, uygulamanızın daha sık onay işlemi gerçekleştireceği 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 hizmetler için daha fazla maliyete neden olabilir. Kotalar ve sınırlar bölümüne bakın.

    1 saatlik varsayılan TTL, çoğu uygulama için uygundur. App Check kitaplığının, jetonları TTL süresinin yaklaşık yarısında 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

Kullanıcı uygulamanızı açtığında reCAPTCHA Enterprise, anahtar altındaki kullanıcı etkileşiminin oluşturduğu risk düzeyini değerlendirir ve 0,1'lik 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 sahte olabileceğini gösterir.
  • 1,0 puan, etkileşimin düşük risk taşıdığını ve büyük olasılıkla meşru olduğunu gösterir.

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

Çoğu kullanım alanında varsayılan eşik değeri olan 0, 5 önerilir. Kullanım alanınızda düzenleme yapılması gerekiyorsa bu değeri Firebase Console'da her bir uygulamanız için yapılandırabilirsiniz (Güvenlik > Uygulama Kontrolü'e gidin). Aşağıdaki Uygulama risk eşiğini yapılandırmayla ilgili önemli noktalar bölümünü genişletip 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. File > Add Packages (Dosya > Paket Ekle) bölümüne gidin.

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

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

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

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

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

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

    1. File > Add Packages (Dosya > Paket Ekle) bölümüne 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 hizmetini başlatmanız gerekir.

reCAPTCHA anahtarınızı ileterek bir RecaptchaProviderFactory örneği oluşturun ve ardından App Check'yi bunu 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 ayarını yaptıktan sonra güncellenmiş uygulamayı kullanıcılarınıza dağıtmaya başlayın.

Güncellenen istemci uygulaması, Firebase'e gönderdiği her istekle birlikte App Check jetonları göndermeye başlar. Ancak App Check, App Check uygulanana 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ı rahatsız etmeyeceğinden emin olun. Ancak uygulama kaynaklarınızın şüpheli bir şekilde kullanıldığını fark ederseniz yaptırımı daha erken etkinleştirmek isteyebilirsiniz.

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

App Check yaptırımını 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 veya sürekli entegrasyon (CI) ortamından gelen emülatör / simülatör istekleri 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 onay 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ı ile 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 kotanın ü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.