Pular para o conteúdo

Segurança

Menos de 1 minuto

Segurança

Para verificar a confiabilidade do emissor das requisições, será enviado no Header uma chave de segurança no padrão Basic Authenticationopen in new window. A chave a ser verificada será no seguinte formato:

Exemplo:

Authorization: Basic dml2YXJlYWw6NTk0RjgwM0IzODBBNDEzOTZFRDYzRENBMzk1MDM1NDI=

Validação de Segurança SECRET_KEY

Todas as nossas requisições de integração de leads contém o header Authorization com informações do emissor da requisição, abaixo temos um exemplo em NodeJS de como pegar esse header do request, decodar e confrontar com uma chave que podemos enviar para vocês.

Lembrando que a SECRET_KEY é por CRM não é por cliente, ou seja, não deve ser utilizada para identificação do cliente (anunciante) e sim para validar se a requisição está sendo realizado pelo GrupoZap.

Supondo que já enviamos a SECRET_KEY 594F803B380A41396ED63DCA39503542 :

NodeJS/Javascript

  • 1 - Obter o header Authorization;
const authorization = req.headers.Authorization;
// valor de authorization será `Basic dml2YXJlYWw6NTk0RjgwM0IzODBBNDEzOTZFRDYzRENBMzk1MDM1NDI=`
  • 2 - Ignore Basic e decodifique somente o valor;
const base64 = authorization.split(' ')[1];
// 'dml2YXJlYWw6NTk0RjgwM0IzODBBNDEzOTZFRDYzRENBMzk1MDM1NDI='

const value = new Buffer(base64, 'base64').toString('utf-8');
// 'vivareal:594F803B380A41396ED63DCA39503542'
  • 3 - Valide a SECRET_KEY;
// 'vivareal:594F803B380A41396ED63DCA39503542'
const secretKey = value.split(':')[1];
// 594F803B380A41396ED63DCA39503542

if (secretKey !== SECRET_KEY) {
    return res.sendStatus(401);
}

Caso a chave não for a que enviamos, deverá retornar response statusCode 401, provavelmente a requisição não foi realizada pelo GrupoZap.

Última atualização: