Use o App Check com o provedor de depuração em aplicativos da web

Se, depois de registrar seu aplicativo no App Check, você desejar executá-lo em um ambiente que o App Check normalmente não classificaria como válido, como localmente durante o desenvolvimento ou em um ambiente de integração contínua (CI), será possível criar uma compilação de depuração do seu aplicativo que usa o provedor de depuração do App Check em vez de um provedor de atestado real.

Use o provedor de depuração no localhost

Para usar o provedor de depuração ao executar seu aplicativo no localhost (durante o desenvolvimento, por exemplo), faça o seguinte:

  1. Em sua compilação de depuração, habilite o modo de depuração definindo self.FIREBASE_APPCHECK_DEBUG_TOKEN como true antes de inicializar o App Check. Por exemplo:

    API modular da Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    initializeAppCheck(app, { /* App Check options */ });
    

    API com namespace da Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    firebase.appCheck().activate(/* site key or provider */);
    
  2. Visite seu aplicativo da web localmente e abra a ferramenta de desenvolvedor do navegador. No console de depuração, você verá um token de depuração:

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will
    need to safelist it in the Firebase console for it to work.
  3. Na seção App Check do console do Firebase, escolha Gerenciar tokens de depuração no menu flutuante do seu aplicativo. Em seguida, registre o token de depuração que você efetuou login na etapa anterior.

    Captura de tela do item de menu Gerenciar tokens de depuração

Depois de registrar o token, os serviços de back-end do Firebase o aceitarão como válido.

Como esse token permite acesso aos recursos do Firebase sem um dispositivo válido, é crucial mantê-lo privado. Não o envie para um repositório público e, se um token registrado for comprometido, revogue-o imediatamente no console do Firebase.

Esse token é armazenado localmente em seu navegador e será usado sempre que você usar seu aplicativo no mesmo navegador e na mesma máquina. Se você quiser usar o token em outro navegador ou em outra máquina, defina self.FIREBASE_APPCHECK_DEBUG_TOKEN como a string do token em vez de true .

Use o provedor de depuração em um ambiente de CI

Para usar o provedor de depuração em um ambiente de integração contínua (CI), faça o seguinte:

  1. Na seção App Check do console do Firebase, escolha Gerenciar tokens de depuração no menu flutuante do seu aplicativo. Em seguida, crie um novo token de depuração. Você precisará do token na próxima etapa.

    Como esse token permite acesso aos recursos do Firebase sem um dispositivo válido, é crucial mantê-lo privado. Não o envie para um repositório público e, se um token registrado for comprometido, revogue-o imediatamente no console do Firebase.

    Captura de tela do item de menu Gerenciar tokens de depuração

  2. Adicione o token de depuração que você acabou de criar ao armazenamento de chaves seguro do seu sistema de CI (por exemplo, segredos criptografados do GitHub Actions ou variáveis ​​criptografadas do Travis CI).

  3. Se necessário, configure seu sistema de CI para disponibilizar seu token de depuração no ambiente de CI como uma variável de ambiente. Nomeie a variável como APP_CHECK_DEBUG_TOKEN_FROM_CI .

  4. Em sua compilação de depuração, ative o modo de depuração definindo self.FIREBASE_APPCHECK_DEBUG_TOKEN como o valor da variável de ambiente do token de depuração antes de importar o App Check. Por exemplo:

    API modular da Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    initializeAppCheck(app, { /* App Check options */ });
    

    API com namespace da Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    firebase.appCheck().activate(/* site key or provider */);
    

Quando seu aplicativo for executado em um ambiente de CI, os serviços de back-end do Firebase aceitarão o token enviado como válido.