| Selecionar plataforma: | iOS+ Android Web Flutter |
Esta página mostra como configurar App Check em um app de plataformas da Apple, usando o provedor reCAPTCHA Enterprise. App Check ajuda a garantir que apenas seu app possa acessar os recursos de back-end do seu projeto. Para saber mais, consulte nossa visão geral do App Check.
App Check exige o uso de chaves baseadas em pontuação reCAPTCHA, o que o torna invisível para os usuários. Isso significa que o reCAPTCHA Enterprise provedor não vai exigir que os usuários resolvam um desafio a qualquer momento.
Se o caso de uso exigir recursos reCAPTCHA Enterprise não implementados por App Check, ou se você quiser usar App Check com seu próprio provedor personalizado, consulte Implementar um provedor personalizado do App Check.
1. Configurar seu projeto do Firebase
Adicione o Firebase ao seu projeto da Apple caso ainda não tenha feito isso, add Firebase to your Apple project.
No console Google Cloud, acesse a página Fraud Defense, e faça o seguinte para o provedor reCAPTCHA Enterprise:
Verifique se você está no projeto correto (consulte o seletor de projetos na parte de cima da tela).
Se solicitado, ative a API reCAPTCHA Enterprise.
Crie uma chave do tipo iOS e especifique o ID do pacote do seu app (por exemplo,
com.example.my_app).Insira o mesmo ID do pacote que você forneceu ao criar o app da Apple do Firebase no seu projeto do Firebase. O valor do ID do pacote diferencia maiúsculas de minúsculas.
Para App Check, cada ID do pacote só pode corresponder a uma única chave reCAPTCHA.
Para instruções detalhadas, consulte Criar chaves reCAPTCHA baseadas em pontuação.
Anote essa chave. Você precisará adicioná-la ao fluxo de registro no Firebase console.
No console do Firebase, acesse Segurança > App Check.
Na guia Apps, registre seus apps da plataforma Apple para usar App Check com o provedor reCAPTCHA Enterprise. Você precisará fornecer a chave que recebeu no console Google Cloud.
Opcional: defina o tempo de vida (TTL) do token.
Nas configurações de registro do aplicativo, defina um tempo de vida (TTL) personalizado para App Check tokens emitidos pelo provedor. Você pode definir o TTL para 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. Observe que a biblioteca App Check atualiza tokens em aproximadamente metade da duração do TTL.
Opcional: defina configurações avançadas.
Clique em Salvar.
(Opcional) Definir configurações avançadas
Quando um usuário abre seu app, reCAPTCHA Enterprise avalia o nível de risco da interação do usuário na chave e retorna uma pontuação entre 0,0 e 1,0, em incrementos de 0,1.
- Uma pontuação de 0,0 indica que a interação apresenta alto risco e pode ser fraudulenta.
- Uma pontuação de 1,0 indica que a interação apresenta baixo risco e muito provavelmente é legítima.
App Check permite configurar um limite de risco do app para ajustar sua tolerância a esse risco.
Na maioria dos casos de uso, o valor de limite padrão de 0,5 é recomendado. Se o caso de uso exigir ajuste, você poderá configurar esse valor para cada um dos seus apps no Firebase console (acesse Segurança > App Check). Expanda e revise algumas considerações importantes sobre a configuração do limite de risco do app abaixo.
2. Adicionar o App Check SDK ao seu app
Use o Swift Package Manager (SPM, na sigla em inglês) para instalar e gerenciar as dependências do Firebase. Se você já estiver usando o Firebase, verifique se o pacote do Firebase é a versão 12.17.0 ou mais recente.
No Xcode, abra o projeto do app.
Adicione a biblioteca do Firebase:
Navegue até Arquivo > Adicionar pacotes.
Quando solicitado, adicione o repositório do SDK do Firebase para as plataformas Apple:
https://github.com/firebase/firebase-ios-sdkSelecione a versão mais recente do SDK (v12.17.0 ou mais recente).
Selecione a biblioteca
FirebaseAppCheck.Clique em Adicionar pacote. O Xcode vai resolver e fazer o download das dependências.
Quando solicitado, adicione a biblioteca ao destino do app.
Adicione a biblioteca do reCAPTCHA Enterprise:
Volte para Arquivo > Adicionar pacotes.
Quando solicitado, adicione o repositório do SDK do reCAPTCHA Enterprise:
https://github.com/GoogleCloudPlatform/recaptcha-enterprise-mobile-sdkSelecione a biblioteca
RecaptchaEnterprise.Clique em Adicionar pacote. Quando solicitado, adicione a biblioteca ao destino do app.
3. Inicializar App Check
No seu app, é necessário inicializar App Check antes de usar qualquer outro serviços do Firebase.
Crie uma instância de RecaptchaProviderFactory, transmitindo sua
reCAPTCHA chave e, em seguida, configure App Check para usá-la:
let providerFactory = RecaptchaProviderFactory(siteKey: "SITE_KEY")
AppCheck.setAppCheckProviderFactory(providerFactory)
FirebaseApp.configure()
4. Monitorar métricas e ativar a aplicação obrigatória
Depois de configurar App Check no seu app, comece a distribuir o app atualizado para os usuários.
O app cliente atualizado vai começar a enviar App Check tokens em todas as solicitações feitas ao Firebase. No entanto, App Check não vai bloquear solicitações com tokens inválidos até que App Check seja aplicado.
Monitorar as métricas
_**Antes de ativar a restrição**_, verifique se isso não vai afetar seus usuários legítimos. No entanto, se você perceber um uso suspeito dos recursos do seu app, convém ativar a aplicação obrigatória antes do previsto.
Para ajudar a tomar essa decisão, revise as App Check métricas para os serviços que você usa:
- Monitore as métricas de solicitação App Check para Firebase AI Logic, SQL Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity para iOS, API Maps JavaScript e API Places (novo).
- Monitore as métricas de solicitação do App Check para Cloud Functions.
Ativar a aplicação obrigatória de App Check
Quando você entender como App Check vai afetar seus usuários e estiver tudo pronto para seguir o processo, ative a aplicação obrigatória de App Check:
- Ative a App Checkaplicação obrigatória para Firebase AI Logic, SQL Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity para iOS, API Maps JavaScript e API Places (novo).
- Ative a aplicação de App Check para Cloud Functions.
Usar App Check em ambientes de depuração
App Check classifica alguns ambientes como inválidos, como solicitações de um emulador / simulador durante o desenvolvimento ou de um ambiente de integração contínua (CI).
Para executar o app nesses tipos de ambientes depois que App Check for aplicado, crie um build de depuração do seu app que use o App Check provedor de depuração em vez de um provedor de atestado de produção.
Para mais detalhes, consulte Usar App Check com o provedor de depuração em plataformas da Apple.
Preços
App Check cria uma avaliação em seu nome para validar o token de resposta do usuário sempre que o app atualiza o token App Check. Seu projeto do Firebase será cobrado por cada avaliação criada acima da cota sem custo. Para mais detalhes, consulte reCAPTCHA preços.
Por padrão, seu app atualizará esse token duas vezes a cada uma hora. Para controlar a frequência com que o app atualiza os tokens App Check (e, com isso, a frequência com que novas avaliações são criadas), você pode configurar o TTL do token.