Detectar abuso repetido usando o recall do dispositivo (Beta)

Esta página descreve como usar a recuperação de dispositivo para armazenar e extrair dados personalizados com dispositivos específicos. Você pode recuperar os dados personalizados novamente mais tarde, quando o app for instalado no mesmo dispositivo, mesmo após a redefinição do dispositivo. Isso permite detectar e impedir que um dispositivo seja reutilizado com base em uma ação ou comportamento especificado, preservando a privacidade do usuário.

Como funciona o recall de dispositivos?

O recall de dispositivo permite que os apps armazenem e recuperem dados personalizados associados a um dispositivo específico de uma forma que preserva a privacidade do usuário. Os dados são armazenados nos servidores do Google, permitindo que o app recupere de forma confiável os dados personalizados, mesmo após a reinstalação do app ou a redefinição do dispositivo. Por exemplo, você pode usar o recurso para recuperar dados de dispositivos em que você encontrou evidências de abuso grave, dispositivos que já resgataram itens de alto valor (como um teste sem custo financeiro) ou dispositivos que estão sendo usados repetidamente para criar novas contas com fins abusivos. O reconhecimento do dispositivo preserva a privacidade do usuário porque o app solicitante só pode recuperar os dados limitados associados a dispositivos, sem acessar nenhum identificador de dispositivo ou usuário. Depois de ativar o recall do dispositivo, você poderá fazer o seguinte:

  • Ler dados por dispositivo: é possível ler três valores personalizados ou bits para cada dispositivo quando você recebe um veredito de integridade. Você pode definir seu próprio significado para esses valores. Por exemplo, é possível tratar os valores como três sinais separados ou combiná-los para representar oito rótulos personalizados.
  • Modificar dados por dispositivo: depois de receber um token de integridade, você pode usar esse token para fazer uma chamada do lado do servidor no servidor do Google Play e modificar um ou mais dos valores. Você tem até 14 dias para usar o token. Isso permite modificar um valor se, por exemplo, o abuso só se tornar evidente no período de duas semanas após a primeira verificação de integridade. Quando você modifica um valor, o mês e o ano em que a modificação foi feita também são armazenados.

Considerações e pré-requisitos de recall de dispositivos

O recall de dispositivos só pode ser usado para armazenar e recuperar informações para proteger a segurança do app e reduzir o abuso, a fraude e o acesso não autorizado. Não é permitido usar a recuperação do dispositivo para identificar ou rastrear usuários ou dispositivos individuais, nem usar a recuperação do dispositivo para acompanhar características sensíveis do usuário ou do dispositivo, como gênero, idade ou dados de local.

O recall de dispositivos tem os seguintes pré-requisitos:

  • O recall de dispositivos pode ser usado em smartphones, tablets, dispositivos dobráveis, TVs, dispositivos Auto e Wear OS. No Wear, o recall de dispositivo só está disponível em dispositivos que vêm com o Wear OS 5 ou mais recente. O recall de dispositivos não é aceito em emuladores.
  • O recall de dispositivos exige que versões recentes da Google Play Store e do Google Play Services sejam instaladas e ativadas no dispositivo.
  • A revogação de dispositivos exige que a conta de usuário seja licenciada pelo Google Play. Caso contrário, o veredito não será avaliado.

O recall de dispositivos tem as seguintes considerações de tempo:

  • Depois de verificar um token de integridade, você tem até 14 dias para usá-lo para armazenar dados personalizados de devolução do dispositivo.
  • A recuperação de dispositivo inclui carimbos de data/hora para que você possa considerar os dados modificados recentemente como de prioridade mais alta do que os dados modificados há muito tempo. Considere ignorar ou redefinir os dados após um período de tempo suficiente para considerar que os dispositivos podem mudar de mãos ou ser reformados e revendidos.
  • Os bits de recuperação de um dispositivo serão armazenados por três anos após o último acesso de leitura ou gravação.
  • Se você precisar excluir todos os dados associados a um dispositivo, o app poderá redefinir todos os três valores para "false". Isso vai redefinir automaticamente os carimbos de data/hora.

Para desenvolvedores com vários apps e desenvolvedores que transferem apps, o recall do dispositivo funciona da seguinte maneira:

  • Todos os apps na sua conta de desenvolvedor do Google Play têm acesso aos mesmos três valores por dispositivo. Em outras palavras, se um dos seus apps modificar um dos valores, todos os apps vão ler o valor modificado quando forem instalados no mesmo dispositivo.
  • Se um app for transferido de uma conta de desenvolvedor para outra, o recall do dispositivo vai refletir os dados por dispositivo da nova conta de desenvolvedor, não os dados da conta antiga.

Ativar o reconhecimento do dispositivo

Quando estiver tudo pronto, ative a recuperação de dispositivos no Play Console:

  1. Faça login no Play Console.
  2. Selecione o app que vai usar o recall do dispositivo.
  3. Na seção Versão do menu à esquerda, acesse Integridade do app.
  4. Ao lado da API Play Integrity, clique em Configurações.
  5. Na seção "Respostas" da página, clique em Mudar respostas.
  6. Ative o recall do dispositivo.
  7. Clique em "Salvar alterações".

Quando você ativa ou desativa a recuperação do dispositivo, todas as respostas do teste da API Play Integrity que você configurou no Play Console são excluídas, e é necessário criar essas respostas novamente.

Ler valores de recuperação do dispositivo

A recuperação de dados do dispositivo funciona nas solicitações clássicas e padrão da API Play Integrity. Em solicitações padrão, a recuperação do dispositivo é atualizada na chamada de aquecimento. Em outras palavras, depois de modificar os dados por dispositivo, será necessário realizar outro aquecimento para conferir o valor atualizado. Depois que a recuperação de dados do dispositivo for ativada, você poderá ler os valores de recuperação de dados do dispositivo nos vereditos de integridade.

Modificar valores de recuperação do dispositivo

É possível modificar os valores de recuperação do dispositivo fazendo uma chamada de API de servidor para servidor semelhante à decodificação do veredito de integridade. Definir um bit como true também atualiza a data de gravação (mesmo que já seja true). Definir um bit como false redefine a data de gravação como vazia. Todos os bits não especificados em uma solicitação permanecem inalterados. Há um pequeno atraso de propagação entre a gravação de bits e a possibilidade de lê-los novamente no veredito. Esse atraso pode ser de até 30 segundos, mas geralmente é muito menor. As solicitações de gravação de remoção do dispositivo precisam ser menos frequentes do que as solicitações de token de integridade. Elas não são contabilizadas na cota de solicitação de token de integridade, mas estão sujeitas a limites de taxa defensivos não públicos.

playintegrity.googleapis.com/v1/PACKAGE_NAME/deviceRecall:write -d \
'{
  "integrityToken": "INTEGRITY_TOKEN",
  "newValues": {
    "bitFirst": true,
    "bitThird": false
  }
}'