Saltar al contenido

Complemento generador HMAC-SHA256 (obsoleto) para grupos de agentes privados y en la nube de Jitterbit

Introducción

El complemento Generador HMAC-SHA256 genera una firma de mensaje utilizando la función hash SHA-256. La firma se devuelve como una cadena codificada en hexadecimal en la variable de salida Jitterbit.HMACSHA256.Signature.

Este complemento está disponible de forma predeterminada en grupos de agentes de nube Jitterbit y también pueden asociarse con grupos de agentes privados.

Importante

Los complementos proporcionados por Jitterbit están obsoletos. Consulte Obsolescencia y soporte en Complementos.

Descargue y agregue el complemento

El complemento generador HMAC-SHA256 es un complemento Jitterbit estándar que ya está disponible en la Management Console Complementos página y no necesita descargarse ni agregarse a la organización.

Si el soporte lo indica, este complemento se puede descargar en los enlaces que se proporcionan a continuación y agregar a la organización.

Harmony

v5.x

Asociar el complemento con un grupo de agentes

Todas las versiones de Harmony del complemento Generador HMAC-SHA256 están asociadas con los grupos de agentes de la nube Jitterbit de forma predeterminada. Recomendamos utilizar la versión 1.2.0.0.

Si usa un grupo de agentes privados, antes de poder usar el complemento debe asociarlo con el grupo de agentes privados para que el complemento esté disponible en todos los agentes del grupo.

El complemento aparece en la Management Console Complementos página con el nombre de visualización Generador Jitterbit HMAC-SHA256.

Establecer variables y utilizar el complemento en un proyecto

Consulte estos temas para obtener información sobre el uso de complementos en un proyecto:

Para utilizar el complemento Generador HMAC-SHA256, las variables globales requeridas deben configurarse en un secuencia de comandos para su uso con el complemento. La tabla de entrada a continuación documenta todas las variables posibles para este complemento. La tabla de salida documenta la variable de firma generada por el complemento.

Aporte

Nombre Tipo Obligatorio Descripción
Jitterbit.HMACSHA256.Key Cadena Obligatorio La clave secreta.
Jitterbit.HMACSHA256.Message Cadena Obligatorio El mensaje para el cual se creará una firma.
Jitterbit.HMACSHA256.Encoding Cadena Opcional La codificación a utilizar al traducir la clave y el mensaje a bytes (p. ej. "UTF-8" o "ISO-8859-1"). Si no se establece este valor, se asumirá que tanto la clave como el mensaje son US-ASCII.
Jitterbit.HMACSHA256.Base64EncodedKey Booleano Opcional Establecer en true para claves codificadas en base64. El valor predeterminado es false. Si se establece en true, el valor en el Jitterbit.HMACSHA256.Key La variable se trata como un valor codificado en base64.TABLEROWEND
Jitterbit.HMACSHA256.Base64EncodedMessage Booleano Opcional. Establecido en true para mensajes codificados en base64. El valor predeterminado es false. Si se establece en true, el valor en el Jitterbit.HMACSHA256.Message La variable se trata como un valor codificado en base64.TABLEROWEND

Producción

Nombre Tipo Descripción
Jitterbit.HMACSHA256.Signature Cadena La variable devuelve la firma como una cadena codificada en hexadecimal.

Ejemplo 1

Este secuencia de comandos de ejemplo establece las variables utilizadas como entrada para el complemento Generador HMAC-SHA256 y también ejecuta el complemento.

<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>

El resultado de ejecutar este secuencia de comandos es HMAC Signature: 52d7189b38b924d7ff81e70f1825993363df5bac2ffb2a03c73a0dbb4638759d.

Ejemplo 2 (AWS)

En este ejemplo se utilizan secuencias de comandos para autenticarse con la API REST de AWS mediante AWS Signature Version 4. La primera secuencia de comandos establece las variables utilizadas como entrada para el complemento HMAC-SHA256 Generator y ejecuta el complemento. La segunda secuencia de comandos sirve para obtener la AWS Signature mediante la primera secuencia de comandos.

Puede encontrar ejemplos de los valores que debe pasar a AWS Signature Version 4 en la documentación de AWS Autenticación de solicitudes (AWS Signature Version 4). Para obtener ayuda adicional, por favor contactar al soporte.

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

El secuencia de comandos anterior utiliza referencias de elementos de proyecto en Design Studio sintaxis. Para la sintaxis a utilizar en Integration Studio, ver el RunScript documentación.