Snowflake Integration

      Snowflake Integration


        Article summary

        Background

        This document provides guidelines for our clients to expose data in their Snowflake data warehouses to Assette.

        Problem

        Clients want to securely expose a subset of their data in their Snowflake data warehouse for Assette to consume for content generation or display in client portal.

        Data will be consumed on demand (called “BYODB” – bring your own database) option. With BYODB, Assette stores a limited amount of reference data (e.g., Account Code List, Product information, etc.), and, if applicable, some information derived/calculated by Assette (e.g., top/bottom activity and deviation analysis results).

        Assette Solution
        The recommended approach to expose read only data from Snowflake is given below.
        • Create a Snowflake Reader Account for Assette (e.g., Assette_Reader).
        • Share the required objects (tables, views, etc.) with this Reader Account.
        • Set up a database in this Reader Account with the Share.
        • Set up a warehouse for Assette (e.g,, Assette_WH). This will also allow you to monitor the cost associated with exposing data to Assette.
        • Create a user (e.g., Assette_User) in this Reader Account for Assette and set up Assette warehouse as the default warehouse.
        • Grant required permissions for this user to view data in the database created from the Share.
        • Provide the account identifiers (organization and Reader Account names) and the username to Assette.
        • Assette creates an RSA key pair and provides the public key file to the client (the private key will be securely stored in the client specific Azure Key vault).
        • Client associates this public key with the user (e.g., Assette_User) created for Assette.
        For improved security we recommend:
        • Assette will create new RSA key pairs per agreed upon frequency and share the public key file with the client.
        • Client should associate this public key with user, alternatively using RSA_PUBLIC_KEY and RSA_PUBLIC_KEY_2 properties.
        • Optionally, Assette can discuss limiting access to Assette’s IP address range.

        Once these steps are completed, Assette will be able to access client data using the standard Snowflake .Net Connector library using Snowflake SQL API.