Gerenciamento da coleta de dados
Saiba como gerenciar a coleta de dados para o Braze SDK, para que você possa cumprir todas as regulamentações de privacidade de dados conforme necessário.
Questionário de privacidade do Google Play
A partir de abril de 2022, os desenvolvedores do Android deverão preencher o formulário de segurança de dados do Google Play para divulgar práticas de privacidade e segurança. Este guia fornece instruções sobre como preencher esse novo formulário com informações sobre como o Braze lida com os dados do seu app.
Como desenvolvedor do app, você tem o controle dos dados que envia ao Braze. Os dados recebidos pelo Braze são processados de acordo com suas instruções. Isso é o que o Google classifica como um prestador de serviço.
Este artigo traz informações relacionadas aos dados que o SDK da Braze processa em relação ao questionário da seção de segurança do Google. Este artigo não fornece orientação jurídica, portanto, recomendamos consultar sua equipe jurídica antes de enviar qualquer informação ao Google.
Perguntas
Perguntas | Respostas para o Braze SDK |
---|---|
O seu app coleta ou compartilha algum dos tipos de dados de usuários necessários? | Sim, o SDK da Braze para Android coleta dados conforme configurado pelo desenvolvedor do app. |
Todos os dados de usuários coletados pelo seu app são criptografados em trânsito? | Sim. |
Vocês oferecem uma maneira de os usuários solicitarem a exclusão de seus dados? | Sim. |
Para saber mais sobre como lidar com solicitações de dados de usuários e exclusão, consulte Informações de retenção de dados da Braze.
Coleta de dados
Os dados coletados pelo Braze são determinados pela sua integração específica e pelos dados de usuários que você escolher coletar. Para saber mais sobre quais dados a Braze coleta por padrão e como desativar determinadas atribuições, consulte nossas opções de coleta de dados do SDK.
Categoria | Tipo de dados | Uso da Braze |
---|---|---|
Local | Local aproximado | Não coletado por padrão. |
Localização precisa | ||
Informações pessoais | Nome | |
Endereço de e-mail | ||
IDs de usuário | ||
Endereço | ||
Número de telefone | ||
Raça e etnia | ||
Crenças políticas ou religiosas | ||
Orientação sexual | ||
Outras informações | ||
Informações financeiras | Informações de pagamento do usuário | |
Histórico de compras | ||
Pontuação de crédito | ||
Outras informações financeiras | ||
Saúde e condicionamento físico | Informações sobre integridade | Não coletado por padrão. |
Informações sobre o condicionamento físico | ||
Mensagens | E-mails | Não coletado por padrão. |
SMS ou MMS | ||
Outras mensagens no app | Se você enviar mensagens no app ou notificações por push por meio do Braze, coletaremos informações sobre quando os usuários abriram ou leram essas mensagens. | |
Fotos e vídeos | Fotos | Não coletado. |
Vídeos | ||
Arquivos de áudio | Gravações de voz ou som | |
Arquivos de música | ||
Outros arquivos de áudio | ||
Arquivos e documentos | Arquivos e documentos | |
Calendário | Eventos do calendário | |
Contatos | Contatos | |
Atividade do app | Interações do app | O Braze coleta dados de atividade da sessão por padrão. Todas as outras interações e atividades são determinadas pela integração personalizada do seu app. |
Histórico de pesquisa no app | Não coletado. | |
Aplicativos instalados | Não coletado. | |
Outros conteúdos gerados por usuários | Não coletado por padrão. | |
Outras ações | ||
Navegação na Web | Histórico de navegação na Web | Não coletado. |
Informações e performance do app | Registros de falhas | A Braze coleta registros de falhas para erros que ocorrem no SDK. Eles contêm o modelo do telefone do usuário e o nível do sistema operacional, juntamente com uma ID de usuário específica da Braze. |
Diagnóstico | Não coletado. | |
Outros dados de performance do app | Não coletado. | |
IDs de dispositivos ou outros | IDs de dispositivos ou outros | O Braze gera um ID de dispositivo para diferenciar os dispositivos dos usuários e verifica se as mensagens são enviadas para o dispositivo correto. |
Para saber mais sobre outros dados de dispositivos que o Braze coleta e que podem estar fora do escopo das diretrizes de segurança de dados do Google Play, consulte nossa visão geral do armazenamento Android e nossas opções de coleta de dados SDK.
Desativar o rastreamento de dados
Para desativar a atividade de rastreamento de dados no Android SDK, use o método disableSDK()
. Isso fará com que todas as conexões de rede sejam canceladas, o que significa que o SDK do Braze não passará mais nenhum dado para os servidores do Braze.
Limpeza de dados armazenados anteriormente
Você pode usar o método wipeData()
para limpar completamente todos os dados do lado do cliente armazenados no dispositivo.
Retomada do rastreamento de dados
Para retomar a coleta de dados, você pode usar o método enableSDK()
método. Lembre-se de que isso não restaurará nenhum dado apagado anteriormente.
Manifesto de privacidade da Apple
O que são dados de rastreamento?
A Apple define “dados de rastreamento” como os dados coletados em seu app sobre um usuário final ou dispositivo que está vinculado a dados de terceiros (como publicidade direcionada) ou a um corretor de dados. Para obter uma definição completa com exemplos, consulte Apple: Rastreamento.
Por padrão, o SDK da Braze não coleta dados de rastreamento. No entanto, dependendo da configuração do SDK da Braze, talvez seja necessário listar dados específicos da Braze no manifesto de privacidade do app.
O que é um manifesto de privacidade?
Um manifesto de privacidade é um arquivo em seu projeto Xcode que descreve o motivo pelo qual seu app e SDKs de terceiros coletam dados, juntamente com seus métodos de coleta de dados. Cada um dos seus SDKs de terceiros que rastreiam dados exige seu próprio manifesto de privacidade. Quando você cria o relatório de privacidade do seu app, esses arquivos de manifesto de privacidade são automaticamente agregados em um único relatório.
Domínios de dados de rastreamento da API
A partir do iOS 17.2, a Apple bloqueará todos os pontos de extremidade de rastreamento declarados em seu app até que o usuário final aceite um aviso de transparência de rastreamento de anúncios (ATT). A Braze fornece endpoints de rastreamento para encaminhar seus dados de rastreamento e, ao mesmo tempo, permite que você encaminhe dados primários que não sejam de rastreamento para o endpoint original.
Declaração de dados de rastreamento do Braze
Para obter um passo a passo completo, consulte o tutorial de dados de rastreamento de privacidade.
Pré-requisitos
A seguinte versão do Braze SDK é necessária para implementar esse recurso:
Etapa 1: Analise suas políticas atuais
Revise as políticas atuais de coleta de dados do SDK do Braze com sua equipe jurídica para determinar se o seu app coleta dados de rastreamento conforme definido pela Apple. Se não estiver coletando dados de rastreamento, não é necessário personalizar seu manifesto de privacidade para o SDK da Braze neste momento. Para saber mais sobre as políticas de coleta de dados do SDK da Braze, consulte Coleta de dados do SDK.
Se algum de seus SDKs que não sejam da Braze coletar dados de rastreamento, será necessário analisar essas políticas separadamente.
Etapa 2: Criar um manifesto de privacidade
Primeiro, verifique se você já tem um manifesto de privacidade procurando um arquivo PrivacyInfo.xcprivacy
em seu projeto Xcode. Se você já tiver esse arquivo, prossiga para a próxima etapa. Caso contrário, consulte Apple: Crie um manifesto de privacidade.
Etapa 3: Adicione seu endpoint ao manifesto de privacidade
Em seu projeto Xcode, abra o arquivo PrivacyInfo.xcprivacy
do app, clique com o botão direito do mouse na tabela e verifique Chaves e Valores Brutos.
Em Configuração de privacidade do app, escolha NSPrivacyTracking e defina seu valor como SIM.
Em Configuração de privacidade do app, escolha NSPrivacyTrackingDomains. Na matriz de domínios, adicione um novo elemento e defina seu valor como o ponto de extremidade que você adicionou anteriormente ao seu AppDelegate
, prefixado com sdk-tracking
.
Etapa 4: Declare seus dados de rastreamento
Em seguida, abra o site AppDelegate.swift
e liste cada propriedade de rastreamento que deseja declarar, criando uma lista de rastreamento estática ou dinâmica. Lembre-se de que a Apple bloqueará essas propriedades até que o usuário final aceite o prompt de ATT, portanto, liste apenas as propriedades que você e sua equipe jurídica consideram rastreamento. Por exemplo:
No exemplo a seguir, dateOfBirth
, customEvent
e customAttribute
são declarados como dados de rastreamento em uma lista estática.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import UIKit
import BrazeKit
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
static var braze: Braze? = nil
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
let configuration = Braze.Configuration(apiKey: brazeApiKey, endpoint: brazeEndpoint)
// Declare which types of data you wish to collect for user tracking.
configuration.api.trackingPropertyAllowList = [
.dateOfBirth,
.customEvent(["event-1"]),
.customAttribute(["attribute-1", "attribute-2"])
]
let braze = Braze(configuration: configuration)
AppDelegate.braze = braze
return true
}
}
No exemplo a seguir, a lista de rastreamento é atualizada automaticamente depois que o usuário final aceita o prompt ATT.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
func applicationDidBecomeActive(_ application: UIApplication) {
// Request and check your user's tracking authorization status.
ATTrackingManager.requestTrackingAuthorization { status in
// Let Braze know whether user data is allowed to be collected for tracking.
let enableAdTracking = status == .authorized
AppDelegate.braze?.set(adTrackingEnabled: enableAdTracking)
// Add the `.firstName` and `.lastName` properties, while removing the `.everything` configuration.
AppDelegate.braze.updateTrackingAllowList(
adding: [.firstName, .lastName],
removing: [.everything]
)
}
}
Etapa 5: Evitar loops de repetição infinitos
Para evitar que o SDK entre em um loop infinito de repetição, use o método set(adTrackingEnabled: enableAdTracking)
para lidar com as permissões de ATT. A propriedade adTrackingEnabled
em seu método deve ser tratada de forma semelhante à seguinte:
1
2
3
4
5
6
7
8
func applicationDidBecomeActive(_ application: UIApplication) {
// Request and check your user's tracking authorization status.
ATTrackingManager.requestTrackingAuthorization { status in
// Let Braze know whether user data is allowed to be collected for tracking.
let enableAdTracking = status == .authorized
AppDelegate.braze?.set(adTrackingEnabled: enableAdTracking)
}
}
Desativar o rastreamento de dados
Para desativar a atividade de rastreamento de dados no Swift SDK, defina a propriedade enabled
para false
em sua instância do Braze. Quando enabled
é definido como false
, o SDK da Braze ignora qualquer chamada para a API pública. O SDK também cancela todas as ações em andamento, como solicitações de rede, processamento de eventos, etc.
Limpeza de dados armazenados anteriormente
Você pode usar o método wipeData()
para limpar completamente os dados do SDK armazenados localmente no dispositivo de um usuário.
Para as versões 7.0.0 e posteriores do Braze Swift, o SDK e o método wipeData()
geram aleatoriamente um UUID para o ID do dispositivo. No entanto, se o seu useUUIDAsDeviceId
estiver definido como false
ou se estiver usando o Swift SDK versão 5.7.0 ou anterior, também será necessário fazer uma solicitação de postagem para /users/delete
já que o seu Identificador para Fornecedores (IDFV) será automaticamente usado como o ID do dispositivo desse usuário.
Retomada do rastreamento de dados
Para retomar a coleta de dados, defina enabled
como true
. Lembre-se de que isso não restaurará nenhum dado apagado anteriormente.
Coleção IDFV
Nas versões anteriores do SDK da Braze para iOS, o campo IDFV (Identifier for Vendor, identificador do fornecedor) era coletado automaticamente como o ID do dispositivo do usuário. A partir do Swift SDK v5.7.0
, o campo IDFV foi desativado opcionalmente e, em vez disso, o Braze definiu um UUID aleatório como o ID do dispositivo. A partir do Swift SDK v7.0.0
, o campo IDFV não será coletado por padrão, e um UUID será definido como o ID do dispositivo.
O recurso useUUIDAsDeviceId
configura o Swift SDK para definir o ID do dispositivo como um UUID. Tradicionalmente, o SDK do iOS atribuía a ID do dispositivo igual ao valor IDFV gerado pela Apple. Com esse recurso ativado por padrão em seu app iOS, todos os novos usuários criados por meio do SDK receberiam um ID de dispositivo igual a um UUID.
Se você ainda quiser coletar o IDFV separadamente, poderá usar set(identifierforvendor:)
.
Considerações
Versão do SDK
No Swift SDK v7.0.0+
, quando useUUIDAsDeviceId
estiver ativado (padrão), todos os novos usuários criados serão atribuídos a um ID de dispositivo aleatório. Todos os usuários existentes anteriormente manterão o mesmo valor de ID do dispositivo, que pode ter sido IDFV.
Quando esse recurso não estiver ativado, os dispositivos continuarão a ser atribuídos ao IDFV após a criação.
Downstream
Parceiros tecnológicos: Quando esse recurso for ativado, todos os parceiros de tecnologia que derivam o valor IDFV do ID do dispositivo Braze não terão mais acesso a esses dados. Se o valor IDFV derivado do dispositivo for necessário para a integração com parceiros, recomendamos que você defina esse recurso como false
.
Currents: useUUIDAsDeviceId
definido como true significa que o ID do dispositivo enviado em Currents não será mais igual ao valor IDFV.
Perguntas frequentes
Essa mudança afetará meus usuários existentes no Braze?
Não. Quando ativado, esse recurso não substituirá nenhum dado de usuário no Braze. Novos IDs de dispositivo UUID serão criados apenas para novos dispositivos ou quando wipedata()
for chamado.
Posso desativar esse recurso depois de ativá-lo?
Sim, esse recurso pode ser ativado e desativado a seu critério. Os IDs de dispositivos armazenados anteriormente nunca serão substituídos.
Ainda posso capturar o valor do IDFV via Braze em outro lugar?
Sim, você ainda pode coletar opcionalmente o IDFV por meio do Swift SDK (a coleta está desativada por padrão).
Disabling data tracking
This guide uses code samples from the Braze Web SDK 4.0.0+. To upgrade to the latest Web SDK version, see SDK Upgrade Guide.
To disable data-tracking activity on the Web SDK, use the method disableSDK()
. This will sync any data logged before disableSDK()
was called, and will cause all subsequent calls to the Braze Web SDK for this page and future page loads to be ignored.
Use the Disable Tracking or Resume Tracking tag type to disable or re-enable web tracking, respectively. These two options call disableSDK
and enableSDK
.
Best practices
To provide users with the option to stop tracking, we recommend building a simple page with two links or buttons: one that calls disableSDK()
when clicked, and another that calls enableSDK()
to allow users to opt back in. You can use these controls to start or stop tracking via other data sub-processors as well.
The Braze SDK does not need to be initialized to call disableSDK()
, allowing you to disable tracking for fully anonymous users. Conversely,enableSDK()
does not initialize the Braze SDK so you must also call initialize()
afterward to enable tracking.
Resuming data tracking
To resume data collection, you can use the enableSDK()
method.
Wiping previously-stored data
To manually trigger a data flush and ensure queued user data or events are sent to Braze servers, use the RequestImmediateDataFlush()
method on the UBraze
object.
1
UBraze->RequestImmediateDataFlush();