Entregue cada avaliação concluída do Device Intelligence no seu próprio bucket S3 em JSONL ou Parquet, incluindo a impressão digital completa do dispositivo e sinais de rede, IP, geo, VPN, bot e comportamentais.
A exportação para S3 do Device Intelligence grava cada avaliação concluída em um bucket S3 de sua propriedade, para que você possa carregar os dados de impressão digital e de risco no seu próprio data warehouse, ferramentas antifraude ou pipeline de análise. Cada registro contém a impressão digital completa do dispositivo, além dos sinais de rede, IP, geo, VPN, bot e comportamentais que a cside calculou para aquela visita.
Recurso pago do Device Intelligence
A exportação para S3 está disponível nos planos pagos do Device Intelligence e durante um teste ativo do Device Intelligence. Ative e configure em Settings > Device Intelligence no painel. Se o seu plano expirar, a cside mantém as suas configurações de exportação e pausa a entrega, e a aba é substituída por um aviso de upgrade, portanto as exportações não podem ser editadas nem excluídas até que você faça o upgrade. A entrega retoma sozinha depois do upgrade, sem reconfiguração.
Como a entrega funciona
Formato: JSONL (JSON Lines, application/x-ndjson) ou Apache Parquet. Você escolhe o formato por exportação no painel. No JSONL, cada linha é um registro completo de avaliação. O Parquet agrupa os mesmos registros em um arquivo colunar que você pode carregar diretamente em um data warehouse ou motor de consulta.
Frequência: a cside envia uma vez por dia. Cada execução cobre o dia UTC completo anterior. Um dia sem avaliações concluídas não gera objeto nenhum.
Organização dos objetos: os objetos ficam sob um caminho particionado e autoexplicativo (veja abaixo).
Deduplicado: cada avaliação aparece uma vez, na sua versão calculada mais recente. Reprocessar um dia sobrescreve os mesmos objetos no lugar, então não há linhas duplicadas para reconciliar.
Destino: o seu bucket. A cside grava objetos, mas nunca os lê nem os lista.
dt=<YYYY-MM-DD> é o dia UTC ao qual os registros pertencem, e <HH> é a hora UTC de dois dígitos, então a exportação de um dia é dividida em um objeto por hora que teve avaliações. <ext> é jsonl ou parquet. Os segmentos team= e dt= são partições no estilo Hive, então motores de consulta como Athena, Glue e Spark fazem a poda automaticamente com base neles.
Configure a exportação
Escolha um bucket e um prefixo de caminho
Crie ou escolha um bucket S3 e defina um prefixo de caminho para a exportação, como fingerprints/. A cside grava apenas sob esse prefixo, o que mantém a exportação separada de qualquer outra coisa no bucket. O prefixo é opcional. Sem ele, a cside grava na raiz do bucket.
Conceda acesso de escrita à cside
Adicione esta declaração à política do seu bucket, em Permissions no console do S3:
Substitua <your-bucket> pelo nome do seu bucket. A permissão é somente de escrita: s3:PutObject deixa a cside adicionar objetos e nada mais, então a cside não consegue listar, ler nem excluir nada no seu bucket.
Restringir a permissão ao seu prefixo
Para deixar a política mais restrita, defina Resource como arn:aws:s3:::<your-bucket>/<your-path-prefix>/*. O painel gera a política para você com o seu bucket e o seu prefixo já preenchidos, então, se você definiu um prefixo, copie a versão dele.
Propriedade dos objetos
A cside entrega cada objeto com uma cópia do lado do servidor, do seu próprio bucket para o seu. Mantenha o seu bucket com a propriedade de objetos Bucket owner enforced (ACLs desabilitadas), que é o padrão do S3, para que a sua conta seja dona dos objetos entregues e possa lê-los.
Crie a exportação no painel
Abra o painel, vá para Settings > Device Intelligence e selecione New export. Preencha o formulário:
Domain Scope: todos os domínios, incluindo os que você adicionar depois, ou um subconjunto escolhido por você
S3 Bucket Name e Region: o bucket da etapa 1
Path Prefix (opcional): o prefixo da etapa 1
Format: JSONL ou Parquet
A cside dá o nome da exportação para você, a partir do escopo e do bucket. Depois de salvar, os arquivos diários começam a chegar sob o seu prefixo. Na mesma aba você pode pausar uma exportação com o botão de alternância, editá-la ou excluí-la.
Compartilhar um bucket com a exportação de alertas de segurança
A exportação do Device Intelligence e a exportação para S3 de alertas de segurança gravam a partir da mesma role IAM da cside e precisam da mesma permissão s3:PutObject, então uma única declaração AllowCsideNotificationExport com escopo para o bucket inteiro cobre as duas.
São dois destinos independentes, cada um com o seu bucket, a sua região e o seu prefixo opcional, então você pode apontar as duas para um mesmo bucket ou para buckets separados. Os arquivos nunca colidem: alertas são gravados como alerts-team-<team_id>-<from>-<to>.csv e avaliações como cside-fingerprints/team=<team_id>/dt=<YYYY-MM-DD>/. Os prefixos organizam os objetos, não são o que mantém as duas exportações separadas.
Estrutura do registro
Cada linha é um objeto JSON com um conjunto de campos de identidade de nível superior mais objetos aninhados para cada grupo de sinais:
Objeto
Descrição
fingerprint
A impressão digital do dispositivo (navegador, hardware, renderização e sinais de ambiente).
network_client_metrics
Características TCP e TLS da conexão.
ip_enrichment
Dados de ASN, geo e privacidade derivados do IP do visitante.
geo_lite_city_data
Geolocalização em nível de cidade do IP do visitante.
vpn_evaluation
Probabilidade de VPN e sinais de apoio.
bot_evaluation
Probabilidade de bot, veredito e sinais de apoio.
fingerprint_enrichment
Sinais derivados da impressão digital, como detecção de e-mail descartável.
rule_evaluations
Resultados das regras avaliadas para esta visita.
behavior
Sinais comportamentais na página para a sessão: hooks de APIs JavaScript, contagem de eventos não confiáveis e detecção de agente. Presente quando dados comportamentais foram coletados, caso contrário null.
Chaves ausentes significam valores padrão
Um campo só aparece quando tem um valor diferente do padrão. Uma chave ausente significa que o valor estava vazio, era false, 0, ou não foi coletado. Ao analisar o arquivo, trate uma chave ausente como um valor padrão, não como um erro.
Campos de nível superior
Campo
Tipo
Descrição
evaluation_id
string
ID único desta avaliação.
customer_id
string
O ID cside do seu domínio.
customer_domain
string
O domínio avaliado.
team_id
string
O ID da sua equipe na cside.
timestamp
string
Hora da avaliação, ISO 8601.
page_url
string
A página onde a avaliação foi acionada.
session_id
string
ID da sessão do navegador.
request_id
string
ID de correlação da requisição de origem.
client_ip
string
Endereço IP do visitante.
user_agent
string
User agent do navegador do visitante.
device_id
string
Identificador estável do dispositivo, derivado dos sinais coletados. Também presente dentro do objeto fingerprint.
is_bot
boolean
Se o visitante é classificado como bot. O veredito completo está em bot_evaluation.
bot_agent_id
string
Bot identificado, quando conhecido (por exemplo, google-googleother).
is_vpn
boolean
Se o visitante é classificado como usuário de VPN. O veredito completo está em vpn_evaluation.
vpn_probability
number
Probabilidade de VPN, de 0 a 1.
vpn_confidence
number
Confiança na classificação, de 0 a 1.
vpn_reasons
string[]
Motivos legíveis da classificação.
device_fingerprint
string
Token compacto de impressão digital do dispositivo (base64).
threat_fingerprint
string
Token compacto de impressão digital de ameaça (base64).
Objeto fingerprint
A impressão digital do dispositivo é o maior objeto. As tabelas abaixo agrupam seus campos por categoria.
Identidade
Campo
Tipo
Descrição
device_id
string
Identificador estável do dispositivo, derivado dos sinais coletados.
Navegador e sistema
Campo
Tipo
Descrição
product
string
Valor navigator.product do navegador.
product_sub
string
Valor navigator.productSub do navegador.
browser_name
string
Nome do navegador.
browser_version
string
Versão do navegador.
mobile
boolean
Se o navegador se identifica como móvel.
apple_pay_version
number
Versão da API do Apple Pay, quando disponível.
user_agent
string
Cadeia de user agent do navegador.
plugins
string[]
Plugins instalados no navegador.
platform
string
Plataforma do sistema operacional.
cpu_architecture
string
Arquitetura de CPU informada.
hardware_architecture
number
Indicador da arquitetura de hardware.
connection
string
Tipo de conexão de rede (por exemplo, 4g).
Renderização (Canvas, WebGL, WebGPU)
Campo
Tipo
Descrição
canvas_signal
string
Sinal de renderização de Canvas.
webgl_signal
string
Sinal de renderização de WebGL.
webgl_vendor
string
Cadeia de fornecedor do WebGL.
webgl_renderer
string
Cadeia de renderizador do WebGL.
video_card_vendor
string
Fornecedor da GPU.
video_card_renderer
string
Renderizador da GPU.
video_card_vendor_unmasked
string
Fornecedor da GPU sem máscara, quando disponível.
video_card_renderer_unmasked
string
Renderizador da GPU sem máscara, quando disponível.
video_card_version
string
Cadeia de versão do driver da GPU.
video_card_shading_language_version
string
Versão da linguagem de shading.
webgpu_supported
boolean
Se o WebGPU é compatível.
webgpu_adapter
string
Descrição do adaptador WebGPU.
webgpu_signal
string
Sinal de renderização de WebGPU.
Idioma e hora
Campo
Tipo
Descrição
timezone
string
Fuso horário informado.
locale
string
Configuração regional informada.
languages
string[]
Idiomas aceitos.
Áudio
Campo
Tipo
Descrição
audio_signal
string
Sinal de impressão digital de áudio.
audio_max_channels
number
Máximo de canais de saída de áudio.
audio_channel_count_mode
string
Modo de contagem de canais de áudio.
Hardware
Campo
Tipo
Descrição
device_memory
number
Memória do dispositivo informada, em GB.
hardware_concurrency
number
Número de núcleos lógicos de CPU.
js_heap_size_limit
number
Limite do heap de JavaScript, em bytes.
math_values
object
Resultados das sondagens de precisão matemática, indexados por operação.
Tela
Campo
Tipo
Descrição
screen_width
number
Largura da tela em pixels.
screen_height
number
Altura da tela em pixels.
screen_resolution
string
Cadeia de resolução da tela.
color_depth
number
Profundidade de cor da tela.
device_pixel_ratio
number
Proporção de pixels do dispositivo.
touch_support
boolean
Se a entrada por toque é compatível.
max_touch_points
number
Máximo de pontos de toque simultâneos.
media_matches
string[]
Media queries CSS correspondentes.
APIs do navegador
Campo
Tipo
Descrição
online_status
boolean
Se o navegador se declara on-line.
do_not_track
string
Configuração Do Not Track.
cookies_enabled
boolean
Se os cookies estão habilitados.
media_devices
string[]
Tipos de dispositivos de mídia disponíveis.
indexeddb_support
boolean
Suporte a IndexedDB.
localstorage_support
boolean
Suporte a localStorage.
sessionstorage_support
boolean
Suporte a sessionStorage.
bluetooth_support
boolean
Suporte a Web Bluetooth.
geolocation_support
boolean
Suporte à API de geolocalização.
device_motion_support
boolean
Suporte a movimento do dispositivo.
device_orientation_support
boolean
Suporte à orientação do dispositivo.
speech_recognition_support
boolean
Suporte ao reconhecimento de fala.
vibration_support
boolean
Suporte à API de vibração.
gamepad_support
boolean
Suporte à API de gamepad.
fullscreen_support
boolean
Suporte à API de tela cheia.
clipboard_support
boolean
Suporte à API da área de transferência.
service_worker_support
boolean
Suporte a Service Worker.
webassembly_support
boolean
Suporte a WebAssembly.
Preferências
Campo
Tipo
Descrição
prefers_dark_mode
boolean
Prefere o esquema de cores escuro.
prefers_reduced_motion
boolean
Prefere movimento reduzido.
Fontes
Campo
Tipo
Descrição
detected_fonts
string[]
Fontes detectadas no dispositivo.
font_metrics
object
Métricas de renderização de fontes, indexadas por medição.
Sinais de rede
Campo
Tipo
Descrição
stun_ips
string[]
Endereços IP dos candidatos WebRTC do visitante, geralmente o endereço público informado pelo servidor STUN. Muitas vezes vazio: os navegadores mascaram os endereços locais e o WebRTC nem sempre está disponível.
permission_states
object
Estados de permissão, indexados por nome de permissão.
WebRTC, fala e MathML
Campo
Tipo
Descrição
webrtc_supported
boolean
Suporte a WebRTC.
webrtc_hash
string
Hash do conjunto de recursos de WebRTC.
webrtc_details
object
Capacidades detalhadas de WebRTC.
webrtc_error
string
Erro da sondagem de WebRTC, se ocorreu.
speech_synthesis_supported
boolean
Suporte à síntese de fala.
speech_hash
string
Hash do conjunto de vozes de síntese.
speech_details
object
Dados detalhados da síntese de fala.
speech_error
string
Erro da sondagem de fala, se ocorreu.
mathml_supported
boolean
Suporte a MathML.
mathml_hash
string
Hash da renderização de MathML.
mathml_details
object
Dados detalhados da renderização de MathML.
mathml_error
string
Erro da sondagem de MathML, se ocorreu.
Desempenho e bateria
Campo
Tipo
Descrição
fps
number
Quadros por segundo medidos.
battery_info
object
Estado da bateria: charging, level, charging_time, discharging_time.
Detecção de modo anônimo
Campo
Tipo
Descrição
incognito_detected
boolean
Se um modo de navegação privada foi detectado.
incognito_support
string
Nível de suporte do método de detecção.
incognito_method
string
Método de detecção utilizado.
incognito_quota_bytes
number
Cota de armazenamento observada durante a detecção.
Detecção de ferramentas de desenvolvedor
Campo
Tipo
Descrição
developer_tools_detected
boolean
Se as ferramentas de desenvolvedor parecem estar abertas.
developer_tools_support
string
Nível de suporte da detecção.
developer_tools_method
string
Método de detecção utilizado.
developer_tools_gap_px
number
Diferença da janela, em pixels, usada para detecção.
Detecção de máquina virtual
Campo
Tipo
Descrição
virtual_machine_detected
boolean
Se o dispositivo parece ser uma máquina virtual.
virtual_machine_support
string
Nível de suporte da detecção.
virtual_machine_reason
string
Motivo pelo qual o dispositivo foi sinalizado.
Automação e adulteração
Campo
Tipo
Descrição
web_driver
boolean
Se navigator.webdriver está definido.
web_driver_tampered
boolean
Se a flag webdriver parece adulterada.
cdp
boolean
Uso do Chrome DevTools Protocol detectado.
cdp_tampered
boolean
Se os sinais de CDP parecem adulterados.
tamper_injected_globals
string[]
Variáveis globais suspeitas injetadas.
tamper_expose_binding_leak
boolean
Vazamento de binding associado à automação.
tamper_desc_instance_own
string[]
Descritores de propriedade próprios anômalos.
tamper_desc_proto_nonnative
string[]
Descritores de protótipo não nativos.
tamper_xrealm_webdriver_mismatch
boolean
Divergência de webdriver entre realms.
tamper_xrealm_renderer_delta
boolean
Diferença de renderizador entre realms.
tamper_probe_blocked
boolean
Se as sondagens de adulteração foram bloqueadas.
Atestação do dispositivo
Campo
Tipo
Descrição
device_uvpaa
boolean
Autenticador de plataforma com verificação de usuário disponível.
device_client_caps_count
number
Contagem de capacidades do cliente informadas.
device_caps_uvpa
boolean
Capacidade do autenticador de plataforma.
device_apple_pay_active_card
boolean
O Apple Pay tem um cartão ativo.
device_payment_enrolled
boolean
O dispositivo está cadastrado em um meio de pagamento.
device_serial_present
boolean
Capacidade serial presente.
device_hid_present
boolean
Capacidade HID presente.
device_notif_static
string
Sinal estático de capacidade de notificação.
device_notif_queried
string
Sinal consultado de capacidade de notificação.
device_realness_probe_error
boolean
Se uma sondagem de autenticidade falhou.
DRM
Campo
Tipo
Descrição
drm_probed
boolean
Se o suporte a DRM foi sondado.
drm_clearkey
boolean
Suporte a Clear Key.
drm_widevine
boolean
Suporte a Widevine.
drm_widevine_robustness
string
Nível de robustez do Widevine.
drm_externalclearkey
boolean
Suporte a External Clear Key.
drm_fairplay
boolean
Suporte a FairPlay.
drm_playready
boolean
Suporte a PlayReady.
drm_hw_secure_all
boolean
Suporte a decodificação segura por hardware.
drm_ua_brand_is_google_chrome
boolean
A marca do UA declara Google Chrome.
drm_error
string
Erro da sondagem de DRM, se ocorreu.
drm_elapsed_ms
number
Duração da sondagem de DRM, em milissegundos.
Tags fornecidas pelo cliente
Campo
Tipo
Descrição
external_ids
object
Identificadores que você anexou à impressão digital, como accountId, orderId ou email.
extension_presence_results
object
Extensões de navegador detectadas, indexadas por extensão.
Objeto network_client_metrics
Características TCP e TLS em nível de conexão.
Campo
Tipo
Descrição
client_ip
string
Endereço IP do visitante.
client_port
number
Porta de origem do visitante.
user_agent
string
User agent visto na camada de rede.
js_timezone
string
Fuso horário informado pelo JavaScript.
timestamp
string
Hora em que a amostra de rede foi coletada, ISO 8601.
request_id
string
ID da requisição na camada de rede.
protocol
string
Protocolo HTTP utilizado.
quic_version
number
Versão do QUIC, quando a conexão usou QUIC.
syn_ip_ttl
number
TTL de IP do pacote SYN inicial.
syn_window_size
number
Tamanho da janela TCP do SYN inicial.
syn_window_scale
number
Escala da janela TCP do SYN inicial.
tcp_rtt_usec
number
Tempo de ida e volta TCP estimado, em microssegundos.
tcp_rttvar_usec
number
Variância do tempo de ida e volta TCP.
tcp_rtt_min_usec
number
Tempo de ida e volta TCP mínimo observado.
tcp_timestamp
number
Valor da opção timestamp do TCP.
tcp_mss_syn
number
MSS de TCP anunciado.
tcp_mss_rcv
number
MSS de TCP observado do par.
tls_handshake_usec
number
Duração do handshake TLS, em microssegundos.
tls_clienthello_size
number
Tamanho do ClientHello, em bytes.
tls_sni_format
string
Formato da extensão SNI.
tls_alpn_protocols
string[]
Protocolos ALPN oferecidos no handshake TLS.
tls_clienthello_ciphers
number[]
Cifras oferecidas.
tls_clienthello_extensions
number[]
Extensões TLS oferecidas.
tls_clienthello_signature_algs
number[]
Algoritmos de assinatura oferecidos.
tls_clienthello_legacy_version
number
Versão legada do ClientHello.
tls_clienthello_supported_versions
number[]
Versões de TLS oferecidas.
tls_ja4
string
Impressão digital JA4 do cliente TLS.
matched_against
string
Domínio com o qual a conexão foi correspondida.
team_id
string
O ID da sua equipe na cside.
Objeto ip_enrichment
Dados derivados do endereço IP do visitante.
Campo
Tipo
Descrição
asn
number
Número de Sistema Autônomo.
asn_name
string
Nome da organização do ASN.
asn_network
string
Faixa de rede do ASN.
asn_type
string
Tipo de ASN, como hosting ou isp.
city_name
string
Nome da cidade.
country_code
string
Código do país.
country_name
string
Nome do país.
latitude
number
Latitude.
longitude
number
Longitude.
postal_code
string
Código postal.
region_code
string
Código da região.
region_name
string
Nome da região.
timezone
string
Fuso horário.
hosting
boolean
O IP pertence a um provedor de hosting.
proxy
boolean
O IP é um proxy conhecido.
relay
boolean
O IP é um relay privado.
tor
boolean
O IP é um nó de saída Tor.
vpn
boolean
O IP é uma VPN conhecida.
service
string
Serviço de privacidade identificado, quando conhecido.
maxmind_asn
number
ASN segundo a MaxMind.
is_datacenter_ip
boolean
O IP está em uma faixa de data center.
is_likely_datacenter
number
Pontuação de probabilidade de data center.
Objeto geo_lite_city_data
Geolocalização em nível de cidade.
Campo
Tipo
Descrição
city_name
string
Nome da cidade.
country_code
string
Código do país.
country_name
string
Nome do país.
latitude
number
Latitude.
longitude
number
Longitude.
postal_code
string
Código postal.
region_code
string
Código da região.
region_name
string
Nome da região.
timezone
string
Fuso horário.
Objeto vpn_evaluation
Probabilidade de VPN e sinais de apoio.
Campo
Tipo
Descrição
is_vpn
boolean
Se o visitante é classificado como usuário de VPN.
vpn_probability
number
Probabilidade de VPN, de 0 a 1.
vpn_confidence
number
Confiança na classificação, de 0 a 1.
reasons
string[]
Motivos legíveis da classificação.
features
object
Sinais numéricos usados na classificação.
context
object
Contexto de enriquecimento, como nome de host de DNS reverso, ASN e geo.
Objeto bot_evaluation
Probabilidade de bot e veredito.
Campo
Tipo
Descrição
is_bot
boolean
Se o visitante é classificado como bot.
bot_probability
number
Probabilidade de bot, de 0 a 1.
bot_confidence
number
Confiança na classificação, de 0 a 1.
bot_agent_id
string
Bot identificado, quando conhecido (por exemplo, google-googleother).
reasons
string[]
Motivos legíveis da classificação.
session_event_count
number
Número de eventos comportamentais processados para a sessão.
model_1_score
number
Pontuação do primeiro modelo de bot (sinais de impressão digital e de rede).
model_1_threshold
number
Limiar de decisão aplicado à pontuação do primeiro modelo.
model_2_score
number
Pontuação do segundo modelo de bot (sinais comportamentais).
model_2_threshold
number
Limiar de decisão aplicado à pontuação do segundo modelo.
features
object
Sinais numéricos usados na classificação.
Objeto fingerprint_enrichment
Campo
Tipo
Descrição
throwaway_email_detected
boolean
Se um e-mail anexado usa um domínio descartável.
Objeto rule_evaluations
Campo
Tipo
Descrição
rules
object[]
Resultados de regras nomeadas. Cada entrada tem slot, rule_id, result, metadata e computed_at.
Objeto behavior
Sinais comportamentais na página para a sessão. O objeto inteiro é null quando nenhum dado comportamental foi coletado para a avaliação, então você consegue distinguir “nenhum agente detectado” de “nenhum dado comportamental”.
Campo
Tipo
Descrição
start_time
number
Início da janela de observação comportamental.
end_time
number
Fim da janela de observação comportamental.
page_urls
string[]
Páginas vistas durante a janela comportamental da sessão.
js_hooks
object[]
APIs JavaScript nativas interceptadas. Cada entrada tem key (a função interceptada, como eval, fetch, function_bind, script_create ou node_append_child), initializer (o que instalou o hook) e count (quantas vezes disparou).
untrusted_event_count
number
Número de eventos DOM reportados com isTrusted definido como false, um sinal comum de automação.
agent_detected
boolean
Se alguma amostra na sessão foi sinalizada como agente automatizado.
Registro de exemplo
Um único registro, formatado aqui para facilitar a leitura. No arquivo, cada registro é uma única linha.
Este site usa cookies e outras tecnologias que permitem a nós e às empresas com as quais trabalhamos coletar informações sobre seu dispositivo e uso do site para habilitar funcionalidades, análises e publicidade. Veja nosso Aviso de Cookies para detalhes.