Desenvolvedores/Entrar em produção

Segurança

A sua chave de API pode gastar o saldo da carteira e ler códigos de cartão. Proteja a chave, e os códigos que você recebe, como se fossem dados bancários e dinheiro vivo.

Veja também: Autenticação · Webhooks · Sandbox

#Seus segredos

SegredoPor que importaOnde guardar
Chave de API (cvb2b_...)Quem tiver a chave pode fazer pedidos e ler códigos.Em um gerenciador de segredos, só nos servidores
Segredo do webhook (whsec_...)Comprova que o webhook veio mesmo da CardV.Só no servidor que recebe os webhooks
Senhas do PortalOwners podem criar chaves e exibir o valor delas.Em um gerenciador de senhas, com 2FA
  • Deixe as chaves só nos seus servidores. Nunca coloque chaves em apps, navegadores, URLs, repositórios de código, chamados, chats ou e-mails.
  • Use uma chave por sistema. Assim você desativa uma sem parar as outras.
  • Limite quem pode ler a chave. Troque a chave quando sair alguém que tinha acesso a ela.
  • Se houver chance de uma chave ter vazado, desative-a no Portal na hora. Depois crie uma nova e avise o suporte da CardV.
  • Ative a verificação em duas etapas (2FA) para todos os Owners do Portal.

#Códigos e dados dos clientes

GET/orders/{order_id} retorna códigos completos e prontos para uso quando chamado com chave de API. Os códigos incluem números de cartão, PINs, códigos de segurança, dados de QR code e links de resgate. O pedido também devolve os dados de recarga do seu cliente (inputs).

  • Nunca registre em log respostas de pedido, códigos, links de resgate nem os inputs dos clientes. Registre os IDs: order_id, external_order_id, sku_id e o status HTTP.
  • Nunca registre em log os cabeçalhos X-Api-Key, X-Signature ou X-CardV-Signature.
  • Guarde os códigos criptografados. Só o processo que entrega os códigos aos clientes deve conseguir lê-los. Apague os códigos quando terminar o seu prazo de retenção.
  • Não guarde respostas de pedido em caches compartilhados, CDNs ou ferramentas de monitoramento. Desative a captura do corpo das chamadas à CardV.
  • Um redeem_url é o próprio código. Proteja-o como um PIN.

#Rede

  • Chame só b2b.cardv.net e sandbox.cardv.net, sempre por HTTPS. Nunca desative a verificação de certificado.
  • Use a lista de IPs permitidos em produção. Ela reduz o estrago se uma chave vazar. Atualize a lista quando os seus servidores mudarem.
  • Verifique a assinatura de todo webhook, recuse timestamps antigos e ignore duplicados. Não coloque a URL do webhook atrás de login. A assinatura já é a prova.

#Pessoas e acessos

  • Dê a cada usuário do Portal o menor perfil de acesso de que ele precisa: Viewer para consultar, Manager para fazer pedidos e adicionar saldo, Owner para cuidar da segurança.
  • Remova do Portal as pessoas que saírem da empresa, tanto no Live quanto no Sandbox.

#Registro de auditoria

O registro de auditoria do Portal (Owner) guarda as ações de segurança, como criação de chaves, exibição de chaves, mudanças na lista de IPs permitidos e troca de segredos de webhook. A CardV também registra IPs bloqueados, falhas de assinatura e estouros do limite de requisições, e a equipe dela recebe alertas quando há atividade fora do normal.

Revise o registro de auditoria com frequência. Trate qualquer exibição de chave inesperada como um possível vazamento.

#Como relatar um problema

Se você suspeitar de vazamento de chave, pedidos fraudulentos ou falha de segurança na CardV, escreva na hora para [email protected]. Informe o seu Merchant ID e os números dos pedidos. Nunca inclua os próprios segredos.

Dúvidas sobre a integração? Envie um e-mail para [email protected] com seu Merchant ID e o ID do pedido ou da requisição.