Ir para o conteúdo

HMAC-SHA256 Generator

Introdução

O plugin HMAC-SHA256 Generator gera uma assinatura de mensagem usando a função de hash SHA-256. A assinatura é retornada como uma string codificada em hexadecimal na variável de saída Jitterbit.HMACSHA256.Signature.

Este plug-in está disponível por padrão em Jitterbit Grupos de Agentes em Nuvem e também pode ser associado a Grupos de Agentes Privados.

Importante

Os plug-ins fornecidos pelo Jitterbit estão obsoletos. Consulte Deprecação e suporte em Plugins.

Baixe e Adicione o Plug-in

O plugin HMAC-SHA256 Generator é um plugin Jitterbit padrão que já está disponível no Management Console Plugins e não precisa ser baixado ou adicionado à organização.

Se direcionado pelo Jitterbit Support, este plug-in pode ser baixado nos links fornecidos abaixo e adicionado à organização (consulte Adicionar novos plug-ins em Customizações > Plug-ins).

Harmony Jitterbit

Jitterbit v5.x

Associar o Plug-in a um Grupo de Agentes

Todas as versões Harmony do plug-in HMAC-SHA256 Generator estão associadas aos Grupos de Agentes em Nuvem por padrão. Recomendamos o uso da versão 1.2.0.0.

Se estiver usando um Grupo de Agentes Privados, antes de poder usar o plug-in, você deve associá-lo ao Grupo de Agentes Privados para disponibilizar o plug-in em todos os agentes do grupo (consulte Associar Grupos de Agente em Customizações > Plug-ins).

O plug-in está listado no Management Console Plugins com um nome de exibição de Jitterbit HMAC-SHA256 Generator.

Definir Variáveis e Usar o Plug-in em um Projeto

Consulte estes tópicos para obter informações sobre como usar plug-ins em um projeto:

Para usar o plug-in HMAC-SHA256 Generator, todas as variáveis globais necessárias devem ser definidas em um script para uso com o plug-in. A tabela de entrada abaixo documenta todas as variáveis possíveis para este plugin. A tabela de saída documenta a saída da variável de assinatura pelo plug-in.

Entrada

Nome Tipo Obrigatório Descrição
Jitterbit.HMACSHA256.Key Corda Obrigatório A chave secreta.
Jitterbit.HMACSHA256.Message Corda Obrigatório A mensagem para a qual criar uma assinatura.
Jitterbit.HMACSHA256.Encoding Corda Opcional A codificação a ser usada ao converter a chave e a mensagem em bytes (por exemplo, "UTF-8" ou "ISO-8859-1"). Se esse valor não for definido, a chave e a mensagem serão consideradas US-ASCII.
Jitterbit.HMACSHA256.Base64EncodedKey Booleano Opcional Definido como true para chaves codificadas em base64. O padrão é false. Se definido para true, o valor no Jitterbit.HMACSHA256.Key variável é tratada como um valor codificado em base64.
Jitterbit.HMACSHA256.Base64EncodedMessage Booleano Opcional. Definido como true para mensagens codificadas em base64. O padrão é false. Se definido para true, o valor no Jitterbit.HMACSHA256.Message variável é tratada como um valor codificado em base64.

Saída

Nome Tipo Descrição
Jitterbit.HMACSHA256.Signature Corda A variável retorna a assinatura como uma string codificada em hexadecimal.

Exemplo 1

Este script de exemplo define as variáveis usadas como entrada para o plug-in HMAC-SHA256 Generator, bem como executa o plug-in.

<trans>
//Clear result:
$Jitterbit.HMACSHA256.Signature = "";

$Jitterbit.HMACSHA256.Key = "dGVzdA==";
$Jitterbit.HMACSHA256.Message = "Test";
$Jitterbit.HMACSHA256.Encoding = "UTF-8"; // optional
$Jitterbit.HMACSHA256.Base64EncodedKey = true;
$Jitterbit.HMACSHA256.Base64EncodedMessage = false;
eval(RunPlugin("<TAG>plugin:http://www.jitterbit.com/plugins/pipeline/user/HMACSHA256Generator</TAG>"), $error=GetLastError());
WriteToOperationLog("HMAC Signature: " + $Jitterbit.HMACSHA256.Signature);
</trans>

O resultado da execução deste script é HMAC Signature: 52d7189b38b924d7ff81e70f1825993363df5bac2ffb2a03c73a0dbb4638759d.

Exemplo 2 (AWS)

Este exemplo usa scripts para autenticar com a API REST da AWS usando o AWS Signature versão 4. O primeiro script define as variáveis usadas como entrada para o plug-in HMAC-SHA256 Generator e executa o plug-in. O segundo script é para obter a assinatura da AWS usando o primeiro script.

Exemplos dos valores que você precisa passar para o AWS Signature versão 4 podem ser encontrados na documentação da AWS Authenticating Requests (AWS Signature versão 4). Para obter assistência adicional, entre em contato com o suporte.

Get HMAC-SHA256 Signature
<trans>
ArgumentList(key, message, encoding, keyEncoded, messageEncoded);

encoding = IfEmpty(encoding, "UTF-8");
keyEncoded = IfEmpty(keyEncoded, False);
messageEncoded = IfEmpty(messageEncoded, False);

$Jitterbit.HMACSHA256.Key = key;
$Jitterbit.HMACSHA256.Message = message;
$Jitterbit.HMACSHA256.Encoding = encoding;
$Jitterbit.HMACSHA256.Base64EncodedKey = keyEncoded;
$Jitterbit.HMACSHA256.Base64EncodedMessage = messageEncoded;
eval(RunPlugin("<TAG>plugin:http://www.jitterbit.com/plugins/pipeline/user/HMACSHA256Generator</TAG >"), $error=GetLastError());
$Jitterbit.HMACSHA256.Signature;
</trans>
AWS Signature
<trans>
ArgumentList(key, dateStamp, regionName, serviceName, package);

keySecret = ("AWS4" + key);
keyDate = RunScript("<TAG>Scripts/Get HMAC-SHA256 Signature</TAG>", keySecret, dateStamp, "", False, False);
keyRegion = RunScript("<TAG>Scripts/Get HMAC-SHA256 Signature</TAG>", Base64Encode(HexToBinary(keyDate)), regionName, "", True, False);
keyService = RunScript("<TAG>Scripts/Get HMAC-SHA256 Signature</TAG>", Base64Encode(HexToBinary(keyRegion)), serviceName, "", True, False);
keySigned = RunScript("<TAG>Scripts/Get HMAC-SHA256 Signature</TAG>", Base64Encode(HexToBinary(keyService)), package, "", True, False);
</trans>

Nota

O script acima usa referências de item de projeto no Design Studio sintaxe. Para sintaxe a ser usada no Cloud Studio, Veja o RunScript documentação.