Uygulama Kontrolü ile Firebase dışı kaynakları koruyun

Uygulama Kontrolü ile uygulamanızın Firebase dışındaki kaynaklarını (ör. kendi bünyesinde barındırılan arka uçlar) koruyabilirsiniz. Bunun için aşağıdakilerin ikisini de yapmanız gerekir:

  • Bu sayfada açıklandığı gibi uygulama istemcinizi her istekle birlikte arka ucunuza bir Uygulama Kontrolü jetonu gönderecek şekilde değiştirin.
  • Özel arka uçtan Uygulama Kontrolü jetonlarını doğrulama bölümünde açıklandığı gibi, arka ucunuzu her istekle birlikte geçerli bir Uygulama Kontrolü jetonu gerektirecek şekilde değiştirin.

Başlamadan önce

Varsayılan sağlayıcıları kullanarak Uygulama Kontrolü'nü uygulamanıza ekleyin.

Arka uç istekleriyle birlikte Uygulama Kontrolü jetonları gönderme

Arka uç isteklerinizin geçerli ve süresi dolmamış bir Uygulama Kontrolü jetonu içerdiğinden emin olmak için her isteğin önüne bir getToken() çağrısı ekleyin. Uygulama Kontrolü kitaplığı, gerekirse jetonu yeniler.

Geçerli bir jeton edindikten sonra bu jetonu istekle birlikte arka ucunuza gönderin. Bunu nasıl yapacağınız size kalmıştır ancak sorgu parametreleri de dahil olmak üzere Uygulama Kontrolü jetonlarını URL'lerin bir parçası olarak göndermeyin. Aksi takdirde bu jetonlar yanlışlıkla sızıntılara ve müdahaleye karşı savunmasız hale gelir. Önerilen yaklaşım, jetonu özel bir HTTP başlığında göndermektir.

Örnek:

void callApiExample() async {
    final appCheckToken = await FirebaseAppCheck.instance.getToken();
    if (appCheckToken != null) {
        final response = await http.get(
            Uri.parse("https://yourbackend.example.com/yourExampleEndpoint"),
            headers: {"X-Firebase-AppCheck": appCheckToken},
        );
    } else {
        // Error: couldn't get an App Check token.
    }
}