On this Page

Snap type:Transform
Description:

This Snap decrypts specified field values in the input documents.

  • Expected upstream Snaps:    Any Snap with a document output view
  • Expected downstream Snaps: Any Snap with a document input view
  • Expected input: Stream of documents with encrypted field values
  • Expected output: Same as input documents with specified field values decrypted
Prerequisites:None
Support and limitations:


Account:

This Snap uses account references created on the Accounts page of SnapLogic Manager to handle access to this endpoint. See Transform Accounts for information on setting up this type of account.

KeyStore account or Passphrase-based Key account can used.

Use KeyStore account for X.509 key or secret (symmetric) key.

If no account is selected, the Key property should have an expression to be evaluated with the input document or the pipeline parameter.

Views:


InputThis Snap has exactly one document input view.
OutputThis Snap has exactly one document output view.
ErrorThis Snap has at most one document error view and produces zero or more documents in the view.


Settings

Label


Fields to decrypt


Required. A table for JSON-path expressions to fields to decrypt. Use the suggest button to select the field to decrypt.
Advanced Options
Key

This property is required if no account is selected.

It should be a JSON-path expression to be evaluated with input documents or pipeline parameters to the base64 or PEM-encoded key. Do not copy-and-paste directly to the property.

For a sample pipeline using X.509 certificate, refer to this Pipeline. You can also download this Pipeline from the Downloads section below.

Example: $key

Default value: None


Examples


Encrypt and Decrypt the Input Documents

In this pipeline, the JSON Generator Snap, passes the values to the Encrypt Field Snap that provides the fields to be encrypted. The Upstream Mapper Snap maps the values to be decrypted to the Decrypt Field Snap.

The JSON Generator Snap passes the values to the Encrypt Field Snap. Note that the key value is also provided.



The Encrypt Field Snap provides the values to be encrypted. The key value $key is passed via the input document.

The output preview from the Encrypt Field Snap:



The Mapper Snap maps the values including the key value to the Decrypt Field Snap.

The Decrypt Field Snap decrypts the provided fields.

  

The output preview from the Decrypt Field Snap:



Encrypt and Decrypt Documents Using Passphrase Account with Selected Algorithm Transform Type

In this pipeline, the CSV Generator Snap supplies the values to the Field Encrypt Snap which provides the fields to be encrypted.The Decrypt Snap decrypts the fields and passes the required field values using the downstream Mapper Snap. The Snaps use the PassPhrase-based Account. 

The Passphrase Account set with a nine digit phrase and a key size of 128.

The CSV Generator Snap passes the values to the Encrypt Snap.


The Field Encrypt Snap encrypts the provided fields, $Phone_m, $Phone_h, $Phone_w.  The Transform type is selected from the suggested list.


The output preview from the Field Encrypt Snap: (Note the encrypted values followed by ENC:...)



The Decrypt Field Snap decrypts the field, $Phone_h. Note that the output preview has the Phone_h field decrypted.

The Mapper Snap passes the field $Phone_h values to the output preview:



Encrypt and Decrypt Using KeyStore Account with Transform type as 'auto'

In this pipeline, the JSON Generator Snap passes the values to the Mapper Snap that maps them to the Encrypt Field Snap for the values to be encrypted and then decrypt the values as provided in the Decrypt Field Snap.

The Keystore Account set with the Keystore location as secret_key.jks.

The JSON Generator Snap provides the values to the Mapper Snap.


The Mapper Snap maps the values to be passed to the Encrypt Field Snap.


The Encrypt Field Snap provides the fields to be encrypted. The Transform type is selected 'auto' which means that the Snap selects the algorithm as registered in the KeyStore file in the Account. 

The output preview from the Encrypt Field Snap:



The Decrypt Field Snap decrypts the fields as provided.

The successful execution of the pipeline displays the below output preview:


   


Downloads