Usted estĆ” aquĆ:
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. |
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.
- 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.
-
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. -
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.shde secuencia de comandos y su archivo de certificado se denomina2025_dc_byok.crt, ejecutarĆa lo siguiente: ./2025_dc_rootkeygen.sh 2025_dc_byok.crt. -
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.
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"
