Lista de verificação de segurança para usar o Firebase AI Logic

Quando você chama a Gemini API diretamente dos seus apps para dispositivos móveis e apps da web, proteger sua infraestrutura de back-end, cota e comandos próprios requer uma abordagem de defesa em profundidade em várias camadas. Consulte esta lista de verificação para implementar as práticas recomendadas de segurança para o Firebase AI Logic.

Verificação de apps, dispositivos e usuários

Verifique se as solicitações recebidas se originam de instâncias legítimas e não adulteradas do seu app em execução em dispositivos autênticos, bem como de usuários autênticos.

Aplicar Firebase App Check

Aplique o Firebase App Check para ajudar a proteger o Gemini API contra abusos quando ele for chamado diretamente do seu app. Quando o App Check é aplicado, ele verifica se as solicitações recebidas são originadas do seu app autêntico e/ou de um dispositivo não adulterado.

O App Check é compatível com provedores de atestação para plataformas da Apple (DeviceCheck, App Attest ou reCAPTCHA Enterprise), Android (Play Integrity ou reCAPTCHA Enterprise) e Web (reCAPTCHA Enterprise). Ele também é compatível com todos esses provedores para apps do Flutter e do Unity.

A partir do início de julho de 2026, o Firebase vai aplicar automaticamente o App Check para Firebase AI Logic durante a configuração guiada no console do Firebase. Se você configurou Firebase AI Logic anteriormente, aplique App Check explicitamente. Para desenvolvimento local, configure o App Check provedor de depuração e registre seu app com um provedor de atestado de produção antes de lançar para os usuários finais.

Ativar a proteção contra repetição com tokens de uso limitado

Como parte da configuração do App Check, considere aplicar a proteção contra repetição para que os tokens do App Check sejam usados apenas uma vez. Essa opção oferece uma proteção reforçada além da proteção básica e permite definir um nível adequado de proteção para seu app e casos de uso.

Configurar restrições para as chaves de API do Firebase

As chaves de API do Firebase identificam seu projeto do Firebase e app ao fazer solicitações. Para evitar o uso não autorizado das suas chaves de API:

  • Defina "Restrições de aplicativo" no console do Google Cloud para limitar o uso de chaves apenas a solicitações do ID do pacote específico do app (Apple), do nome do pacote e da impressão digital SHA-1 (Android) ou do referenciador HTTP (Web).

  • Revise a lista de permissões de "Restrições de API" de cada chave:

As APIs relacionadas ao Firebase usam chaves de API apenas para identificar o projeto ou app do Firebase, não para autorização para chamar a API.

Restringir solicitações apenas a usuários autenticados

Considere aplicar o modo de usuários autenticados para que todas as solicitações via Firebase AI Logic incluam credenciais válidas do Firebase Authentication. Se uma solicitação vier de um usuário final não autenticado, ela será rejeitada com um erro 401: unauthenticated.

Proteção de comandos e reforço de solicitações

Impeça que a descompilação do cliente exponha seus designs de comandos e bloqueie seu back-end para que usuários mal-intencionados não possam executar comandos arbitrários.

Usar modelos de comando do servidor

Use modelos de comandos do servidor para manter comandos, instruções do sistema e configurações de modelo em segurança na nuvem, em vez de codificá-los no código do app cliente, onde podem ser extraídos usando descompilação binária.

O app só faz referência a um ID de modelo e transmite variáveis de entrada dinâmicas. Os modelos de comando do servidor também permitem atualizar comandos ou trocar de modelo sob demanda, sem lançar uma nova versão do app.

Validar e limpar as variáveis de modelo fornecidas pelo cliente

Os modelos de comando do servidor protegem o design do comando, mas os modelos que aceitam variáveis dinâmicas ainda podem ser suscetíveis à injeção de comandos. Como os modelos concatenam as variáveis de entrada do usuário no comando final, faça o seguinte:

  • Valide e limpe todas as entradas do usuário no cliente antes de transmitir variáveis para um modelo (como aplicar limites de caracteres e formatos esperados).
  • Inclua instruções claras do sistema nos seus modelos que definam proteções para como a entrada do usuário é processada.

Aplicar o modo somente de modelo

Considere aplicar o modo somente modelo quando todos os recursos do app usarem modelos de comandos do servidor. Quando aplicada, Firebase AI Logic bloqueia todas as solicitações diretas e sem modelo para o Gemini API (403: unauthorized), impedindo que usuários maliciosos enviem comandos arbitrários ou abusem da sua cota.

Monitoramento, limites e faturamento

Tenha visibilidade do tráfego de entrada e das anomalias de segurança e proteja seu projeto contra picos de uso inesperados ou custos excessivos.

Configurar o AI Monitoring no console do Firebase

Configure o AI monitoring no console do Firebase para ter visibilidade das principais métricas, como contagens de solicitações, latência, uso de tokens e taxas de erro (incluindo falhas de autenticação do 401 e bloqueios somente de modelo do 403). Também é possível inspecionar traces individuais no console do Google Cloud.

Definir limites de taxa e gerenciar cotas

Proteja seu projeto contra picos de uso inesperados e ataques de negação de carteira:

Evite cobranças inesperadas com alertas e gastos máximos

Se o projeto do Firebase estiver no plano de preços Blaze de pagamento por uso:

Próximas etapas