获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

Habilitar el cumplimiento de App Check para Cloud Functions

Cuando comprenda cómo App Check afectará a sus usuarios y esté listo para continuar, puede habilitar la aplicación de App Check.

Para comenzar a hacer cumplir los requisitos del token de verificación de aplicaciones en sus funciones en la nube a las que se puede llamar, modifique sus funciones para verificar si hay tokens de verificación de aplicaciones válidos, como se muestra a continuación. Una vez que habilite la aplicación, se rechazarán todas las solicitudes no verificadas.

  1. Actualice la firebase-functions de base de fuego de su proyecto a la versión 4.0.0 o más reciente:

    npm install firebase-functions@">=4.0.0"
    

    Y actualice la dependencia firebase-admin de su proyecto a la versión 9.8.0 o posterior:

    npm install firebase-admin@">=9.8.0"
    
  2. Establezca la opción de tiempo de ejecución enforceAppCheck para su función en true :

    exports.yourCallableFunction = functions.
      .runWith({
        enforceAppCheck: true  // Requests without valid App Check tokens will be rejected.
      })
      .https.onCall((data, context) => {
        // Your function logic follows.
      });
    
  3. Agregue un cheque para context.app a su función. Su función debería fallar si context.app no ​​está definido.

    exports.yourCallableFunction = functions.https.onCall((data, context) => {
      // context.app will be undefined if the request doesn't include an
      // App Check token. (If the request includes an invalid App Check
      // token, the request will be rejected with HTTP error 401.)
      if (context.app == undefined) {
        throw new functions.https.HttpsError(
            'failed-precondition',
            'The function must be called from an App Check verified app.')
      }
    
      // Your function logic follows.
    });
    
  4. Redistribuya sus funciones:

    firebase deploy --only functions
    

Una vez que se implementen estos cambios, sus Cloud Functions a las que se puede llamar requerirán tokens de verificación de aplicaciones válidos. Los SDK de cliente de Cloud Functions adjuntan automáticamente un token de App Check cuando invocas una función invocable.