Skip to end of banner
Go to start of banner

WIP-Google Service Account

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 29 Next »

In this article

Overview

You can use this account type to connect Google BigQuery Snaps with data sources that use the Google Service account.

Prerequisites

  • Existing Google Service Account with P12 file containing the private key. Learn how to import P12 File into the Google Service Account.

  • JDK with Keytool utility to set up the Keystore. 

Limitations and Known Issues

None.

Account Settings

Asterisk ( * ): Indicates a mandatory field.

  • Suggestion icon ( (blue star) ): Indicates a list that is dynamically populated based on the configuration.

  • Expression icon ( (blue star) ): Indicates the value is an expression (if enabled) or a static value (if disabled). Learn more about Using Expressions in SnapLogic.

  • Add icon ( (blue star) ): Indicates that you can add fields in the fieldset.

  • Remove icon ( (blue star) ): Indicates that you can remove fields from the fieldset.

Field Name

Field Type

Description

Label*

Default Value: None
ExampleService Account

String/Expression

Specify a unique label for the account.

Properties for Google BigQuery

Account ID*   

Default Value: None
Example: 108275755

Integer/Expression

Specify the ID of the service account available in the Google web console.

Private Key ID

Default Value: None
Example: 4fb718fd54de73f0

String/Expression

Specify the ID of the private key available in the Google web console.

Email ID*

Default Value: None
Example: test1@0.iam.gserviceaccount.com

String/Expression

Specify the email id of the the service account available in the Google web console.

Keystore URI*

Default Value: None
Example: g_bigq

String/Expression

Specify the location of the Keystore that contains the private key to be used. You can upload the file using the Upload icon.

Keystore Passphrase*

String/Expression

Specify the passphrase to access the Keystore.

Private Key Alias*

Default Value: None
Example: privatekey

String/Expression

Specify the alias to identify the private key. This is a suggestible field and will lists all the available aliases in the key store.

Properties for Cloud Storage

Account ID 

Default Value: None
Example: 108275755

Integer/Expression

Specify the ID of the service account available in the Google web console.

Private Key ID 

Default Value: None
Example: 4fb718fd54de73f0

String/Expression

Specify the ID of the private key available in the Google web console.

Email ID 

Default Value: None
Example: test1@0.iam.gserviceaccount.com

String/Expression

Specify the email id of the the service account available in the Google web console.

Keystore URI

Default Value: [None]
Example: g_bigq

String/Expression

Specify the location of the Keystore that contains the private key to be used. Click the browse icon to load into/select from SLDB.

Keystore Passphrase

String/Expression

Specify the passphrase to access the Keystore.

Private Key Alias 

Default Value: None
Example: privatekey

String/Expression

Specify the alias to identify the private key. This is a suggestible field and will list all the aliases in the key store.

Default Standard SQL

Checkbox

Select this checkbox if you want to default the dialect in the Query field in the Snaps using this account to Standard SQL.

To override this default setting

Use the #legacySQL tag within the Query field of the Snap to treat it as a Legacy SQL query.

Importing P12 File

Key Steps

  1. Create a new Keystore.

  2. Empty the Keystore.

  3. Verify if the Keystore is empty.

  4. Import the P12 file.

  5. Check the Keystore is non-empty.

  6. Change the alias, if needed.

  7. Verify a new alias.

To perform the above steps, open a Command Prompt window. The steps along with the requisite syntax are described in detail below:

Step 1 - Create New Keystore

  •  Execute the following command at the Command Prompt

keytool -genkey -alias <some alias> -keyalg RSA -keysize 2048 -keystore <keystore name>

Example: keytool -genkey -alias demoalias1 -keyalg RSA -keysize 2048 -keystore demokeystore1

  • Answer the follow-up questions for First and Last name, Organisational unit name, Organisation name, City/Locality, State/Province, and Two-letter country code.

  • Click Yes in the details confirmation dialogbox.

  • Enter the key password for the provided alias.

  • Press Enter.

The same key password will be used in the subsequent steps.

Step 2 - Empty the Keystore

  • Execute the following command at the Command Prompt:

    keytool -delete -alias <alias name> -keystore <keystore name>
    
    Example: 
    keytool -delete -alias demoalias1 -keystore demokeystore1
  • Enter the password as given in Step 1.

Step 3 - Verify if Keystore is Empty

  • Execute the following command at the Command Prompt:

    keytool -v -list -keystore <keystre name>
    
    Example: 
    keytool -v -list -keystore demokeystore1
  • Enter password as given in Step 1.

The response should be "Your keystore contains 0 entries".

Step 4 - Import the P12 file

  • Execute the following command at the Command Prompt:

     keytool -v -importkeystore -srckeystore <p12file.p12> -srcstoretype PKCS12 -destkeystore <keystore name> -deststoretype JKS -destkeypass <password for private key (should be same as keystore passphrase)>
    
    Example: 
    keytool -v -importkeystore -srckeystore sample_p12_file.p12 -srcstoretype PKCS12 -destkeystore demokeystore1 -deststoretype JKS -destkeypass demoPassword1

  • Enter the destination Keystore password given in Step 1.

  • Enter the source Keystore password that was obtained while generating P12 file.

The response should be "Import command completed: 1 entries successfully imported, 0 entries failed or canceled".

Step 5 - Check Keystore to be Non-empty

  • Execute the following command at the Command Prompt:

    keytool -v -list -keystore <keystre name>
    
    Example: 
    keytool -v -list -keystore demokeystore1
  • Enter password as given in Step 1.

The response should show:

Keystore type: JKS

Keystore provider: SUN

Your keystore contains 1 entry

Alias name: privatekey

Creation date: 12 Oct, 2017

Entry type: PrivateKeyEntry

The Keystore is ready with one entry having a private key imported from the P12 file. The alias for that private key is privatekey.

Steps 6 & 7 are needed if you want to change the alias for the imported private key.

Step 6 - Change Alias if needed

  • Execute the following command at the Command Prompt:

keytool -changealias -keystore <keystore name> -alias <current alias> -destalias <new alias>

Example: 
keytool -changealias -keystore demokeystore1 -alias privatekey -destalias first_entry

The response will be blank if the change is successful.

Step 7 - Verify New Alias

  • Repeat Step 5 and ensure the alias name is what is given in Step 6.

The Keystore "demokeystore1" is ready to be used in the snaps with the passphrase given in Step 1.

Error rendering macro 'excerpt-include' : No link could be created for 'XYZ Snap Pack'.

  • No labels