Proteger webhooks

Para garantir que um webhook seja recebido do ISC, a chamada é sincronizada com os outros parâmetros de URL. O ISC criptografa a autenticação por meio de um algoritmo de código de autenticação de mensagem com chave hash (HMAC).
Tabela 1. Parâmetros de segurança
Parâmetro Descrição
carimbo de data/hora O número de segundos desde 1º de janeiro de 1970 UTC.
token Uma sequência aleatória de 64 caracteres alfanuméricos.
assinatura A sequência de dígitos hexadecimais gerados pelo algoritmo HMAC.
Tabela 2. Parâmetros comuns
Parâmetro Descrição
domínio O ambiente ISC que enviou o webhook. A produção é https://www.reservecloud.com/login. QA é https://qa.reservecloud.com/login
ação O código de ação que disparou a chamada de webhook. Por exemplo, GUEST_ROOM_BLOCK_UPDATED
nome O nome do webhook a partir das configurações.

Para verificar se a chamada de webhook foi recebida do ISC, é necessário:

  • Concatenar os valores do carimbo de data/hora e do token.
  • Codificar a sequência de caracteres concatenada com o algoritmo HMAC. A chave está disponível na seção Interface do webhook em Configurações no ISC. O algoritmo deve use a função de hash SHA256.
  • Codificação hexadecimal do resultado usando um letra minúscula para caracteres alfabéticos.
  • Comparar o resultado com o parâmetro de assinatura. Opcionalmente, você poderá verificar se o carimbo de data/hora não está muito diferente da hora atual.