Esta página mostra como ativar o App Check em um app da Apple usando o provedor integrado DeviceCheck. Ao ativar o App Check, você ajuda a garantir que apenas seu app possa acessar os recursos do Firebase do seu projeto. Consulte a Visão geral desse recurso.
Se você quiser usar App Check com seu próprio provedor personalizado, consulte Implementar um provedor App Check personalizado.
1. Configurar seu projeto do Firebase
Adicione o Firebase ao seu projeto Apple, caso ainda não tenha feito isso.
No site para desenvolvedores da Apple, crie uma chave privada DeviceCheck.
Registre seus apps para usar App Check com o provedor DeviceCheck na seção App Check do console Firebase. Será necessário fornecer a chave privada que você criou na etapa anterior.
Geralmente, é necessário registrar todos os apps do projeto porque, depois de ativar a aplicação de um produto do Firebase, somente apps registrados poderão acessar os recursos de back-end do produto.
Opcional: nas configurações de registro do aplicativo, defina um time to live (TTL) personalizado para os tokens do App Check emitidos pelo provedor. É possível definir o TTL como qualquer valor entre 30 minutos e 7 dias. Ao mudar esse valor, esteja ciente das seguintes compensações:
- Segurança: os TTLs mais curtos oferecem maior segurança, porque reduzem a janela em que um token vazado ou interceptado pode ser usado por um invasor.
- Desempenho: TTLs mais curtos significam que seu app realizará atestados com mais frequência. Como o processo de atestado do app adiciona latência às solicitações de rede sempre que é executado, um TTL curto pode afetar o desempenho do app.
- Cota e custo: TTLs mais curtos e novos atestados frequentes esgotam sua cota mais rapidamente e, para serviços pagos, podem custar mais. Consulte Cotas e limites.
O TTL padrão de uma hora é razoável para a maioria dos apps. A biblioteca App Check atualiza os tokens em aproximadamente metade da duração do TTL.
2. Adicionar a biblioteca App Check ao app
Adicione a dependência de App Check ao
Podfile
do projeto:pod 'FirebaseAppCheck'
Se preferir, use o Gerenciador de pacotes Swift.
Verifique se você também está usando a versão mais recente de todas as bibliotecas de cliente do serviço do Firebase de que depende.
Execute
pod install
e abra o arquivo.xcworkspace
criado.
Próximas etapas
Depois que a biblioteca App Check estiver instalada no seu app, comece a distribuir o app atualizado para os usuários.
O app cliente atualizado vai começar a enviar tokens do App Check em todas as solicitações feitas ao Firebase, mas os produtos dessa plataforma não exigirão que os tokens sejam válidos até que você ative a aplicação obrigatória na seção App Check do Console do Firebase.
Monitorar métricas e ativar a aplicação obrigatória
Antes de ativar a aplicação obrigatória, verifique se isso não vai afetar seus usuários legítimos. Por outro lado, se você perceber um uso suspeito dos recursos do seu app, convém ativar a aplicação obrigatória antes do previsto.
Para tomar essa decisão, analise as métricas do App Check nos serviços usados:
- Monitore as métricas de solicitações App Check para Realtime Database, Cloud Firestore, Cloud Storage, Authentication (Beta) e Vertex AI in Firebase.
- Monitore as métricas de solicitação do App Check para Cloud Functions.
Ativar a aplicação App Check
Assim que você entender como o App Check vai afetar seus usuários e estiver tudo pronto para prosseguir, ative a aplicação obrigatória do App Check:
- Ative a aplicação de App Check para Realtime Database, Cloud Firestore, Cloud Storage, Authentication (Beta) e Vertex AI in Firebase.
- Ative a aplicação de App Check para Cloud Functions.
Usar App Check em ambientes de depuração
Se depois de registrar seu aplicativo no App Check você quiser executá-lo em um ambiente que o App Check normalmente não classificaria como válido, como um simulador durante o desenvolvimento ou em uma integração contínua (CI), crie um build de depuração do seu app que use o provedor de depuração do App Check em vez de um provedor de atestado real.
Consulte Usar App Check com o provedor de depuração em plataformas da Apple.