Configuring a Gateway Integration Endpoint - Google Cloud Storage

A gateway integration endpoint (GIEP) allows STEP to communicate with an external storage system. Once a GIEP has been created and Google Cloud Storage has been selected, the configuration settings allow you to identify the location of the required data.

Prerequisites

To use the Gateway Integration Endpoint Configuration dialog for Google Cloud Storage, grant the following Google Cloud Storage permissions:

  • storage.buckets.get

  • storage.objects.create

  • storage.objects.delete

  • storage.objects.get

  • storage.objects.getIamPolicy

  • storage.objects.list

  • storage.objects.update

Additionally, add the following case sensitive properties in the sharedconfig.properties file on the STEP application server.

Note: Sensitive configuration values that will be filtered from view are denoted with 'Secret.' This means that the actual values will not be visible to users or to Stibo Systems. For example, via Admin Portal configuration lists and remote diagnostics.

  • Connection

    The syntax for specifying the connection is:

    BlobStorage.Google.Secret.ConnectionKeyPath.<#>=<connection-string-alias>,<key-file-location>
    

    For example:

    BlobStorage.Google.Secret.ConnectionKeyPath.1=Website_GCS_Storage1,/shared/customer-config/GCS/key1.json
    BlobStorage.Google.Secret.ConnectionKeyPath.2=Website_GCS_Storage2,/shared/customer-config/GCS/key2.json

    The connection string alias value supplied for the property is displayed in the ‘ConnectionKeyPath’ dropdown menu for the Gateway Integration Endpoint Configuration dialog (explained in the next section). Use a comma to separate the connection-string-alias and the key-file-location values. Enter as many lines as necessary, using one for each available connection key path and using a unique integer. When duplicate integers exist, only the last value is displayed in the dialog.

    The connection with Google Cloud Storage uses Application Default Credentials and requires that a JSON file holds the key to be created. Refer to the Google Cloud console documentation (https://cloud.google.com/iam/docs/keys-create-delete) to create a JSON key type file.

    Download the JSON key file and place it in a location that is accessible by the STEP application. On SaaS environments, for example, the file can be uploaded over an sFTP connection to the customer-config folder.

  • Bucket

    The syntax for specifying the bucket is:

    BlobStorage.Google.BucketName.<#>=<my-bucket>
    

    For example:

    BlobStorage.Google.BucketName.1=ProductImages
    BlobStorage.Google.BucketName.2=Illustrations

    The value supplied for the property is displayed in the ‘Bucket’ dropdown menu for the Gateway Integration Endpoint Configuration dialog (explained in the next section). Enter as many lines as necessary, using one for each available bucket and using a unique integer. When duplicate integers exist, only the last value is displayed in the dialog.

Configuring the Gateway Integration Endpoint

After setting the Google Cloud Storage permissions and adding the sharedconfig.properties file entries to supply values on the dialog, configure the GIEP. If the dropdowns are empty, revisit the sharedconfig.properties file to correct the error.

  1. On the Gateway Integration Endpoint Configuration dialog, use the following parameters to specify which external system the GIEP will access.

    • ConnectionKeyPath - Select the desired Google Cloud Storage connection.

    • Bucket - Select the Google Cloud Storage bucket to use.

    • Connection timeout in seconds - Add number of seconds until timeout. If left blank, the driver default is used.

  2. Click Save to complete the configuration.

  3. Enable the endpoint as defined in the Running a Gateway Integration Endpoint topic.

  4. Test the connection from the gateway as follows:

    • On the Gateway Connectivity flipper, click the Check Connectivity button.

    • In the Check Connectivity dialog, in the Java Script Check Code section, add:

      gateway.checkConnectivity()

    • Click the Check Connectivity button and verify success or make the necessary corrections to connect.

Using the Gateway Integration Endpoint

Configuration of a GIEP is required to set up: