Firebase App Check
O App Check ajuda a proteger os back-ends do app contra abusos, impedindo que clientes não autorizados acessem seus recursos de back-end. Funciona com os Serviços do Google (incluindo Firebase e Google Cloud) e back-ends próprios para manter seus recursos seguros.
Com o App Check, os dispositivos que executam seu app usarão um app ou provedor de atestado de dispositivos que atesta um dos itens a seguir (ou ambos):
- As solicitações vêm do seu app autêntico
- As solicitações vêm de um dispositivo autêntico que não foi comprometido
Esse atestado é anexado a todas as solicitações que o app faz às APIs especificadas. Quando você ativa o App Check, as solicitações de clientes sem um atestado válido são recusadas, assim como qualquer solicitação originada de um app ou plataforma que você não autorizou.
O App Check tem suporte integrado para usar os seguintes serviços como provedores de atestado:
- DeviceCheck ou App Attest em plataformas da Apple
- Play Integrity ou SafetyNet (descontinuado) no Android
- reCAPTCHA Enterprise em apps da Web
Se eles são insuficientes para as suas necessidades, você também pode implementar seu próprio serviço que usa um provedor de atestado terceirizado ou suas próprias técnicas de atestado.
O App Check funciona com os seguintes Serviços do Google:
Serviços do Google compatíveis |
---|
Realtime Database |
Cloud Firestore |
Cloud Storage |
Cloud Functions (funções chamáveis) |
Authentication (Beta. É necessário fazer upgrade para o Firebase Authentication com o Identity Platform) |
Google Identity para iOS (Beta) |
Vertex AI para Firebase (Pré-lançamento) |
Ele também pode ser usado para proteger recursos de back-end que não são do Google.
Tudo pronto para começar?
Como funciona?
Quando você ativa o App Check em um serviço e inclui o SDK do cliente no seu app, as seguintes ações acontecem periodicamente:
- O app interage com o provedor escolhido para receber um atestado da autenticidade do app ou do dispositivo (ou ambos, dependendo do provedor).
- O atestado é enviado ao servidor do App Check, que verifica a validade dele usando parâmetros registrados com o app. Em seguida, retorna ao app um token com prazo de validade. Esse token pode reter algumas informações sobre o material de atestado verificado.
- O SDK do cliente do App Check armazena o token no seu app, pronto para ser enviado junto com todas as solicitações que o app faz para serviços protegidos.
Um serviço protegido pelo App Check só aceita solicitações acompanhadas de um token atual e válido.
Qual é o nível de segurança da verificação de apps?
O App Check depende da capacidade dos provedores de atestado para determinar a autenticidade do app ou do dispositivo. Ele impede que alguns vetores de abuso sejam direcionados para seus back-ends, mas não todos. O uso do App Check não garante a eliminação de todo abuso, mas, ao integrar com o App Check, você está tomando uma medida importante para a proteção do abuso para seus recursos de back-end.
Como o App Check está relacionado ao Firebase Authentication?
O App Check e o Firebase Authentication são partes complementares da história de segurança do seu app. O Firebase Authentication fornece autenticação de usuários, protegendo-os. Já o App Check oferece atestados de autenticidade do app ou do dispositivo, o que protege você, o desenvolvedor. O App Check protege o acesso aos recursos do Google e a back-ends personalizados, ao exigir que as chamadas de API contenham um token válido do App Check. Esses dois conceitos funcionam juntos para ajudar a proteger seu app.
Cotas e limites
O uso do App Check está sujeito às cotas e aos limites dos provedores de atestado que você usa.
O acesso do DeviceCheck e do App Attest está sujeito às cotas ou limitações definidas pela Apple.
A API Play Integrity tem uma cota diária de 10.000 chamadas para o nível de uso da API padrão. Para ver informações sobre como aumentar seu nível de uso, consulte a documentação da API Play Integrity.
A SafetyNet tem uma cota diária de dez mil chamadas. Para mais informações sobre como solicitar um aumento de cota, consulte a documentação da SafetyNet.
O reCAPTCHA Enterprise não tem custo financeiro para 10 mil avaliações por mês e tem uma além desse custo. Consulte os preços do reCAPTCHA.
Começar
Tudo pronto para começar?
Plataformas da Apple
Android
Web
Flutter
C++
Unity
Saiba como implementar um provedor personalizado do App Check:
Saiba como usar o App Check para proteger seus recursos de back-end que não são do Google: