Catch up on highlights from Firebase at Google I/O 2023. Learn more

Web uygulamalarında özel bir sağlayıcıyla Uygulama Kontrolü'nü kullanmaya başlayın

Bu sayfa, özel Uygulama Kontrolü sağlayıcınızı kullanarak bir web uygulamasında Uygulama Kontrolü'nü nasıl etkinleştireceğinizi gösterir. Uygulama Kontrolü'nü etkinleştirdiğinizde, projenizin Firebase kaynaklarına yalnızca uygulamanızın erişebilmesini sağlamaya yardımcı olursunuz.

Yerleşik sağlayıcılardan biriyle Uygulama Kontrolü kullanmak istiyorsanız, reCAPTCHA v3 ile Uygulama Kontrolü ve reCAPTCHA Enterprise ile Uygulama Kontrolü dokümanlarına bakın.

Sen başlamadan önce

1. Uygulama Kontrolü kitaplığını uygulamanıza ekleyin

Henüz yapmadıysanız Firebase'i web uygulamanıza ekleyin . Uygulama Kontrolü kitaplığını içe aktardığınızdan emin olun.

2. App Check sağlayıcı nesnesini oluşturun

Özel sağlayıcınız için bir Uygulama Kontrolü sağlayıcı nesnesi oluşturun. Bu nesne, özel Uygulama Kontrolü sağlayıcınızın orijinallik kanıtı olarak ihtiyaç duyduğu bilgileri toplayan ve bir Uygulama Kontrolü belirteci karşılığında belirteç edinme hizmetinize gönderen bir getToken() yöntemine sahip olmalıdır. App Check SDK, belirteç önbelleğe almayı işler, bu nedenle getToken() uygulamanızda her zaman yeni bir belirteç edinin.

Web version 9

import { CustomProvider } from "firebase/app-check";

const appCheckCustomProvider = new CustomProvider({
  getToken: () => {
    return new Promise((resolve, _reject) => {
      // TODO: Logic to exchange proof of authenticity for an App Check token and
      // expiration time.

      // ...

      const appCheckToken = {
        token: tokenFromServer,
        expireTimeMillis: expirationFromServer * 1000
      };

      resolve(appCheckToken);
    });
  }
});

Web version 8

const appCheckCustomProvider = {
  getToken: () => {
    return new Promise((resolve, _reject) => {
      // TODO: Logic to exchange proof of authenticity for an App Check token and
      // expiration time.

      // ...

      const appCheckToken = {
        token: tokenFromServer,
        expireTimeMillis: expirationFromServer * 1000
      };

      resolve(appCheckToken);
    });
  }
};

3. Uygulama Kontrolünü Başlatın

Herhangi bir Firebase hizmetine erişmeden önce uygulamanıza aşağıdaki başlatma kodunu ekleyin:

Web version 9

import { initializeApp } from "firebase/app";
import { initializeAppCheck } from "firebase/app-check";

const app = initializeApp({
  // Your firebase configuration object
});

const appCheck = initializeAppCheck(app, {
  provider: appCheckCustomProvider,

  // Optional argument. If true, the SDK automatically refreshes App Check
  // tokens as needed.
  isTokenAutoRefreshEnabled: true    
});

Web version 8

firebase.initializeApp({
  // Your firebase configuration object
});

const appCheck = firebase.appCheck();
appCheck.activate(
  appCheckCustomProvider,

  // Optional argument. If true, the SDK automatically refreshes App Check
  // tokens as needed.
  true);

Sonraki adımlar

Uygulama Kontrolü kitaplığı uygulamanıza yüklendikten sonra dağıtın.

Güncellenen istemci uygulaması, Firebase'e yaptığı her istekle birlikte Uygulama Kontrolü belirteçleri göndermeye başlayacak, ancak Firebase konsolunun Uygulama Kontrolü bölümünde zorlamayı etkinleştirene kadar Firebase ürünleri, belirteçlerin geçerli olmasını gerektirmeyecektir.

Metrikleri izleyin ve yaptırımı etkinleştirin

Ancak yaptırımı etkinleştirmeden önce, bunu yapmanın mevcut yasal kullanıcılarınızı kesintiye uğratmayacağından emin olmalısınız. Öte yandan, 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 hizmetler için Uygulama Kontrolü ölçümlerine bakabilirsiniz:

Uygulama Kontrolü zorlamasını etkinleştir

Uygulama Kontrolü'nün kullanıcılarınızı nasıl etkileyeceğini anladığınızda ve devam etmeye hazır olduğunuzda, Uygulama Kontrolü uygulamasını etkinleştirebilirsiniz:

Hata ayıklama ortamlarında Uygulama Kontrolü kullanın

Uygulamanızı Uygulama Kontrolü için kaydettirdikten sonra, uygulamanızı Geliştirme sırasında yerel olarak veya sürekli entegrasyon (CI) ortamı gibi Uygulama Kontrolü'nün normalde geçerli olarak sınıflandırmadığı bir ortamda çalıştırmak isterseniz, gerçek bir tasdik sağlayıcısı yerine Uygulama Kontrolü hata ayıklama sağlayıcısını kullanan, uygulamanızın bir hata ayıklama yapısı.

Bkz. Uygulama Denetimini web uygulamalarında hata ayıklama sağlayıcısıyla kullanma .