Loading
Configuración y mantenimiento de su organización de Salesforce
Script de muestra para la generación de secretos BYOK para Data 360

Script de muestra para la generación de secretos BYOK para Data 360

Proporcionamos una secuencia de comandos para ayudarle a cargar su material BYOK para Cifrado de plataforma para Data 360. Crea una clave raĆ­z cargable. La secuencia de comandos genera un nĆŗmero aleatorio como su secreto y utiliza la clave pĆŗblica del certificado para cifrar el secreto.

Ediciones necesarias

Disponible en Salesforce Classic (no disponible en todas las organizaciones) y Lightning Experience.
Disponible en: Ediciones Enterprise, Performance y Unlimited con las licencias Salesforce Shield o Shield Platform Encryption.
Disponible de forma gratuita en Developer Edition.
Nota
Nota Esta secuencia de comandos es diferente de las que utiliza para crear material BYOK para FLE, Cifrado de índice de búsqueda o Cifrado de base de datos. Consulte las otras pÔginas de esta sección si necesita crear uno de esos otros tipos BYOK en su lugar.

DeberÔ crear un certificado compatible con BYOK y generar un token de importación antes de poder utilizar esta secuencia de comandos. Para Cifrado de plataforma para Data Cloud, solo necesita un certificado autofirmado. Después de cargar el material clave, el certificado se elimina automÔticamente.

La secuencia de comandos crea un Ćŗnico archivo denominado EncryptedKeyMaterial.bin que estĆ” listo para cargarse para su uso como BYOK para Cifrado de plataforma para Data 360. EstĆ” empaquetado y codificado segĆŗn los requisitos para material de claves BYOK de este tipo.

  1. Cree un archivo que contenga la secuencia de comandos y guÔrdelo en el mismo directorio que el archivo de certificado y token de sesión que descargó anteriormente.
  2. AsegĆŗrese de que la secuencia de comandos es ejecutable con chmod 775.
    De forma predeterminada, los archivos temporales no se eliminan. Descomentar la lƭnea final de la secuencia de comandos para que se eliminen automƔticamente.
  3. Ejecute la secuencia de comandos que especifica el nombre del certificado y el archivo del token de sesión. Por ejemplo, si asignó un nombre a su 2025_dc_rootkeygen.sh de secuencia de comandos y su archivo de certificado se denomina 2025_dc_byok.crt, ejecutaría lo siguiente: ./2025_dc_rootkeygen.sh 2025_dc_byok.crt.
  4. La secuencia de comandos genera un archivo denominado EncryptedKeyMaterial.bin.
    Cargue EncryptedKeyMaterial.bin y el archivo de token de importación para su certificado autofirmado que creó anteriormente.
Ejemplo
Ejemplo

Contenido de archivos de 2025_dc_rootkeygen.sh. Puede ejecutar esta secuencia de comandos en sistemas Linux o MacOs.

Esta secuencia de comandos genera una clave raíz segura para Cifrado de plataforma para Data 360 para su uso con Aportar su propia clave (BYOK). Proporciona los dos archivos que generó en la pÔgina BYOK (el token de importación y el certificado). El proceso es

  • Compruebe que se pasa un nombre de certificado y que es recuperable. Salga en caso de fallo.
  • Extraiga la clave pĆŗblica del certificado. Salga en caso de fallo.
  • Cree el material de claves real (en esta secuencia de comandos utilizamos un nĆŗmero aleatorio de 32 bits) como un archivo denominado PlainTextKeyMaterial.bin.
  • Utilice openssl para envolver (cifrar) el archivo PlainTextKeyMaterial.bin con la clave pĆŗblica de certificado utilizando los protocolos de envoltura RSAES_OAEP_SHA_256 y RSA_4096. Esto produce el archivo EncryptedKeyMaterial.bin.
  • Opcionalmente, elimine los archivos de texto sin formato provisionales y el archivo de entrada PublicKey.b64.

El archivo EncryptedKeyMaterial.bin se puede cargar a continuación (junto con el token de importación original) en Salesforce para completar la configuración de BYOK para Data 360.

#!/bin/bash
## BYOK for Data Cloud Sample script to generate and prepare a DC root key for uploading.
## Pass in as parameter: Certificate file (.crt) downloaded from
##  Generate Certificate page. (Referred in this script as certificate.crt or CERT_FILE)

## Validate input parameter
if [ -z "$1" ]; then
    echo "Error: Please provide a certificate file as parameter."
    echo "Usage: ./2025_dc_rootkeygen.sh certificate.crt."
    exit 1
fi

if [ ! -f "$1" ]; then
    echo "Error: File '$1' not found."
    exit 1
fi

CERT_FILE="$1"
PUBLIC_KEY_FILE="public_key.pem"

## Step 1: Extract public key from certificate
echo "Extracting public key from certificate..."
openssl x509 -in "$CERT_FILE" -pubkey -noout > "$PUBLIC_KEY_FILE"

if [ $? -ne 0 ]; then
    echo "Error: Failed to extract public key from certificate."
    exit 1
fi

echo "Public key extracted to $PUBLIC_KEY_FILE."

## 3.0 Generate Key material as PlaintextKeyMaterial.bin
openssl rand -out PlaintextKeyMaterial.bin 32

## 3.1 wrap key material
# Note: we are using RSAES_OAEP_SHA_256 and RSA_4096 for wrapping
# Using PEM format public key directly
openssl pkeyutl \
    -encrypt \
    -in PlaintextKeyMaterial.bin \
    -out EncryptedKeyMaterial.bin \
    -inkey "$PUBLIC_KEY_FILE" \
    -keyform PEM \
    -pubin \
    -pkeyopt rsa_padding_mode:oaep \
    -pkeyopt rsa_oaep_md:sha256 \
    -pkeyopt rsa_mgf1_md:sha256

echo "=== Output file:"
echo "    EncryptedKeyMaterial.bin created." 

## Optional cleanup. Remove the # from the next two lines if you want to delete the files automatically
# rm PlaintextKeyMaterial.bin
# rm "$PUBLIC_KEY_FILE"
 
Cargando
Salesforce Help | Article