Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Özel bir arka uçtan Uygulama Kontrolü belirteçlerini doğrulayın

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.

Uygulama Kontrolü ile uygulamanızın, şirket içinde barındırılan arka uçlar gibi Firebase dışı kaynaklarını koruyabilirsiniz. Bunu yapmak için aşağıdakilerden her ikisini de yapmanız gerekir:

  • Uygulama istemcinizi, iOS+ , Android ve web sayfalarında açıklandığı gibi arka ucunuza her istekle birlikte bir Uygulama Kontrolü belirteci gönderecek şekilde değiştirin.
  • Bu sayfada açıklandığı gibi, her istekte geçerli bir Uygulama Kontrolü belirteci gerektirecek şekilde arka ucunuzu değiştirin.

Sen başlamadan önce

Node.js Yönetici SDK'sını henüz yüklemediyseniz, bunu yapın.

Jetonları doğrulayın

Arka ucunuzdaki Uygulama Kontrolü belirteçlerini doğrulamak için API uç noktalarınıza aşağıdakileri yapan mantık ekleyin:

  • Her isteğin bir Uygulama Kontrolü belirteci içerdiğini kontrol edin.

  • Yönetici SDK'sının appCheck().verifyToken() yöntemini kullanarak Uygulama Kontrolü belirtecini doğrulayın.

    Doğrulama başarılı olursa, doğrulamaToken verifyToken() kodu çözülmüş Uygulama Kontrolü belirtecini döndürür. Başarılı doğrulama, jetonun Firebase projenize ait bir uygulamadan geldiğini gösterir.

Her iki kontrolde de başarısız olan herhangi bir isteği reddedin. Örneğin, Express.js ara yazılımını kullanarak:

const express = require('express');
const app = express();

const firebaseAdmin = require('firebase-admin');
const firebaseApp = firebaseAdmin.initializeApp();

const appCheckVerification = async (req, res, next) => {
    const appCheckToken = req.header('X-Firebase-AppCheck');

    if (!appCheckToken) {
        res.status(401);
        return next('Unauthorized');
    }

    try {
        const appCheckClaims = await firebaseAdmin.appCheck().verifyToken(appCheckToken);

        // If verifyToken() succeeds, continue with the next middleware
        // function in the stack.
        return next();
    } catch (err) {
        res.status(401);
        return next('Unauthorized');
    }
}

app.get('/yourApiEndpoint', [appCheckVerification], (req, res) => {
    // Handle request.
});