Ir para o conteúdo

HMAC-SHA256 Generator

Introdução

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

Este plugin está disponível por padrão em grupos de agentes de nuvem Jitterbit e também pode ser associado a grupos de agentes privados.

Importante

Os plugins fornecidos pelo Jitterbit estão obsoletos. Veja Deprecation and support em Plugins.

Baixe e Adicione o Plugin

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 orientado pelo suporte, este plugin pode ser baixado nos links fornecidos abaixo e adicionado à organização (veja Adicionar novos plugins em Personalizações > Plug-ins).

Harmony

v5.x

Associe o Plugin a um Grupo de Agentes

Todas as versões Harmony do plugin HMAC-SHA256 Generator estão associadas aos grupos de agentes de nuvem Jitterbit por padrão. Recomendamos usar a versão 1.2.0.0.

Se estiver usando um grupo de agentes privados, antes de poder usar o plugin você deve associá-lo ao grupo de agentes privados para disponibilizar o plugin em todos os agentes do grupo (veja Associar grupos de agentes em Personalizações > Plug-ins).

O plugin está listado no Management Console Plugins página com o nome de exibição Jitterbit HMAC-SHA256 Generator.

Defina Variáveis e Use o Plugin em um Projeto

Consulte estes tópicos para obter informações sobre o uso de plugins em um projeto:

Para usar o plug-in Gerador HMAC-SHA256, quaisquer 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 plugin.

Entrada

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

Saída

Nome Tipo Descrição
Jitterbit.HMACSHA256.Signature String 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 plugin HMAC-SHA256 Generator, bem como executa o plugin.

<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 script para autenticação com a API REST da AWS usando AWS Signature versão 4. O primeiro script define as variáveis usadas como entrada para o plug-in Gerador HMAC-SHA256 e executa o plug-in. O segundo script é para obter a assinatura 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 itens de projeto no Design Studio sintaxe. Para sintaxe a ser usada em Cloud Studio, Veja o RunScript documentação.