Pode usar a API Play Integrity para proteger as suas apps e jogos contra interações de risco. Ao identificar estas interações, a sua app pode responder adequadamente para reduzir o risco de ataques e abuso.
Como funciona
A API Integrity unifica as funcionalidades contra abuso do Google Play com uma recolha de sinais de integridade para ajudar os programadores de jogos e apps Android a detetar tráfego potencialmente perigoso e fraudulento. Este tráfego pode ser proveniente de versões modificadas da sua app ou jogo, ou dispositivos não fidedignos ou outros ambientes não fidedignos. Ao detetar este tráfego, pode responder com a ação adequada para reduzir ataques e abusos, tais como fraude, batota e acesso não autorizado.
Quando um utilizador executa uma ação definida pela app ou pelo jogo, o servidor dá instruções ao código do lado do cliente para invocar a API Integrity. O servidor do Google Play devolve uma resposta encriptada com um veredito de integridade sobre se pode ou não confiar neste dispositivo e no respetivo binário. Em seguida, a app encaminha essa resposta para o servidor para validação. O servidor pode decidir o que a app ou o jogo deve fazer a seguir.
A API faculta um veredito de integridade numa resposta que inclui as seguintes informações:
- Binário da app genuíno: determine se está a interagir com o binário não modificado que o Google Play reconhece.
- Instalação do Play genuína: determine se a conta de utilizador atual está licenciada, o que significa que o utilizador instalou ou pagou pela sua app ou jogo no Google Play.
- Dispositivo Android genuíno: determine se a sua app está a ser executada num dispositivo Android genuíno com tecnologia dos Serviços do Google Play (ou numa instância genuína do Google Play Jogos para PC).
Também pode optar por receber informações adicionais sobre o ambiente no veredito de integridade:
- Risco de acesso à app: determine se estão a ser executadas outras apps que possam capturar o ecrã, apresentar sobreposições sobre a sua app ou controlar o dispositivo.
- Risco de software malicioso conhecido: determine se o Google Play Protect está ativado e se encontrou software malicioso conhecido no dispositivo.
Sugestões:
- Pode monitorizar o estado da API Play Integrity e de outros Serviços do Google Play através do painel de controlo de estado do Google Play.
- A API Integrity oferece o máximo valor para a sua app quando segue cada uma das práticas recomendadas na documentação no site para programadores Android.
Configure e faça a gestão da API Play Integrity
Ative a API Integrity para a sua app
Para ativar as respostas da API Integrity para a sua app, tem de associar um projeto do Google Cloud na Play Console. Para associar o seu projeto:
- Abra a Play Console e aceda à página Integridade da app (Lançamento > Integridade da app).
- Desloque a página até à secção "API Play Integrity".
- Escolha "Associar um projeto existente" e o projeto ao qual quer associar
- Clique em Associar projeto na nuvem.
Para começar a integrar a API Integrity na app, tem de fazer o seguinte:
- Para apps Java/Kotlin, instale a biblioteca Android mais recente disponível para a API Play Integrity a partir do Maven Repository da Google.
- Para jogos Unity, instale a versão mais recente dos plug-ins do Google Play para o Unity. São suportadas todas as versões de 2019.x, 2020.x e mais recentes. Se usar o Unity 2018.x, instale a versão 2018.4 ou mais recente. Se usar o Unity 2017.x, instale a versão 2017.4.40 ou mais recente. O Unity 5.x e as versões mais antigas não são suportados.
- Para apps e jogos nativos, instale o SDK nativo do Play Core.
Agora, pode seguir estes passos no site para programadores Android para começar a usar a API Play Integrity na sua app ou jogo.
(Opcional) Personalize as respostas da API Integrity
Para saber como configurar as respostas da API Integrity, visite o site para programadores Android.
Para editar as respostas da API:
- Abra a Play Console e aceda à página Integridade da app (Lançamento > Integridade da app).
- Desloque a página até à secção "API Play Integrity".
- Clique em Definições.
- Desloque a página até à secção "Respostas".
- Clique em Editar.
- Selecione ou desmarque as caixas de verificação junto às respostas da API que quer alterar.
- Clique em Guardar alterações.
Importante: as alterações realizadas às respostas da API têm efeito imediato depois de as guardar, incluindo quando a app está em produção. Antes de alterar o conjunto de respostas da API na Play Console, certifique-se de que o servidor está preparado para aceitar essas respostas.
(Opcional) Configure as definições do pedido clássico
Por predefinição, a Google gere a encriptação de respostas para pedidos clássicos. No entanto, se preferir, pode optar por gerir a encriptação de respostas de forma autónoma.
Importante: alternar a encriptação de respostas entre as geridas pela Google e as autogeridas requer alterações ao código no seu servidor de back-end.
Para fazer a gestão autónoma da encriptação de respostas:
- Abra a Play Console e aceda à página Integridade da app (Lançamento > Integridade da app).
- Desloque a página até à secção "API Play Integrity".
- Clique em Definições.
- Desloque a página até à secção "Pedidos clássicos". Junto a "Encriptação de respostas", o estado será "Geridas pela Google" por predefinição. Clique em Alterar.
- Escolha "Gerir e transferir as minhas chaves de encriptação de respostas" e clique em Guardar alterações. A Google vai gerar chaves de encriptação de respostas que o utilizador tem de transferir e gerir. Tem de atualizar a lógica do seu servidor de back-end para usar as chaves de modo a desencriptar as respostas.
- Siga as instruções no ecrã para gerar um ficheiro .pem e carregue-o para transferir as chaves da API.
- Uma mensagem no ecrã vai confirmar que a gestão da encriptação de respostas foi atualizada.
- Transfira as novas chaves de encriptação de respostas e atualize o servidor de back-end para desencriptar as respostas com as mesmas em produção. Regresse ao separador API Integrity na página Integridade da app para permitir que o Google Play comece a usar as novas chaves de encriptação de respostas em vez das chaves antigas. Esta alteração é imediata.
Se quiser reverter de autogeridas para geridas pela Google:
- Abra a Play Console e aceda à página Integridade da app (Lançamento > Integridade da app).
- Desloque a página até à secção "API Play Integrity".
- Clique em Definições.
- Desloque a página até à secção "Pedidos clássicos". Junto a "Encriptação de respostas", o estado será "Autogeridas" porque o alterou anteriormente. Clique em Alterar.
- Escolha "Permitir que a Google faça a gestão da minha encriptação de respostas (recomendado)" e clique em Guardar alterações. A Google vai gerar e gerir as suas chaves de encriptação de respostas. O seu servidor de back-end chama o servidor do Google Play para desencriptar as respostas.
Teste a integração da API Play Integrity
Para testar a integração da API Integrity, pode configurar uma lista de Contas do Gmail. Primeiro, certifique-se de que os testadores têm acesso ao seu lançamento. Publique a app na faixa de teste interno ou na faixa em que quer testar. Em seguida, siga as instruções para gerir testadores através do endereço de email ou usar Grupos do Google para que os testadores possam aceder ao lançamento.
Para configurar um teste:
- Abra a Play Console e aceda à página Integridade da app (Lançamento > Integridade da app).
- Desloque a página até à secção "API Play Integrity".
- Clique em Definições.
- Desloque a página até à secção "Testar".
- Clique em Criar novo teste.
- Selecione uma lista de correio ou crie uma nova.
- Clique em Criar teste.
Personalize a sua Ficha da loja quando os utilizadores visitam a partir de caixas de diálogo da API Integrity
Pode usar uma caixa de diálogo de remediação da API Integrity para pedir aos utilizadores que obtiveram a sua app de forma não oficial para a instalarem a partir do Google Play. Quando os utilizadores tocam na caixa de diálogo, são redirecionados para a sua Ficha da loja, onde podem tocar no botão de instalação (ou comprar ou atualizar) para adicionar a app à biblioteca do Google Play do utilizador.
Pode personalizar os recursos da Ficha da loja para todos os visitantes que toquem nas caixas de diálogo de remediação da API Integrity, incluindo o nome, o ícone, as descrições e os recursos gráficos da sua app. Para personalizar a sua Ficha da loja quando os utilizadores visitam a partir de uma caixa de diálogo da API Integrity:
- Abra a Play Console e aceda à página Integridade da app (Lançamento > Integridade da app).
- Desloque a página até à secção "API Play Integrity".
- Clique em Definições.
- Desloque a página até à secção "Personalize a Ficha da loja".
- Clique em Criar ficha.
- Siga as instruções na página Crie uma Ficha da loja personalizada e clique em Guardar.
Em alternativa, pode criar Fichas da loja personalizadas para caixas de diálogo da API Integrity diretamente a partir da página "Fichas da loja personalizadas":
- Abra a Play Console e aceda à página Fichas da loja personalizadas (Crescimento > Fichas da loja personalizadas).
- Clique em Criar ficha, escolha se quer criar uma nova ficha ou duplicar uma existente e clique em Seguinte.
- Em "Detalhes da ficha", localize a secção "Público-alvo".
- Selecione Por URL e escreva "playintegrity" na caixa de texto.
- Introduza todos os outros detalhes e clique em Guardar.
Sugestão: o parâmetro de URL "playintegrity" é uma palavra-chave especial reservada para links diretos de integridade, por isso, tem de ser introduzido de forma exata quando configurar a Ficha da loja personalizada.
Aumente os pedidos máximos diários da API Play Integrity
Por predefinição, as apps podem fazer até 10 000 pedidos por dia à API Integrity.
Para ver o volume de pedidos que a sua app faz diariamente:
- Abra a Play Console e aceda à página Integridade da app (Lançamento > Integridade da app).
- Desloque a página até à secção "API Play Integrity".
- Veja o número diário de pedidos. Para ver mais dados, alterar o período e aplicar filtros, clique em Ver relatório da API Integrity.
Para ver os pedidos máximos diários da sua app:
- Abra a Play Console e aceda à página Integridade da app (Lançamento > Integridade da app).
- Desloque a página até à secção "API Play Integrity".
- Clique em Definições.
- Veja o seu nível de utilização.
Pode fazer mais de 10 000 pedidos por dia. Para ser elegível, tem de:
- Confirmar a implementação correta da lógica da API, incluindo novas tentativas.
- Publicar a app no Google Play, bem como em quaisquer outros canais de distribuição.
Para aumentar o número máximo de pedidos diários, preencha este formulário.
Conteúdo relacionado
- Leia a documentação para programadores referente à API Play Integrity
- Veja este vídeo de vista geral sobre a API Play Integrity
- Saiba mais sobre os serviços de assinatura e integridade na Play Console.
- Saiba mais sobre os serviços de assinatura e integridade no site para programadores Android