Connect to Snowflake

Connect Finout to your Snowflake account to gain detailed insights into your Snowflake costs. Choose from two secure authentication methods—key-pair authentication or password-based—to integrate your data seamlessly. This setup allows you to visualize and analyze your expenses precisely, offering a clear view of cost trends and allocations within your Snowflake environment.

What you will do for the Snowflake configuration: 1. Create permissions in Snowflake 2. Authenticate Snowflake into Finout

1. Create Permissions in Snowflake

  1. Log into your Snowflake account using your login credentials.

  2. Create a Finout Permissions in Snowflake:

    1. Open a new worksheet in your Snowflake console.

    2. To set up a dedicated warehouse, role, and user for Finout, paste the following query, ensure secure access by restricting the connection to specific IP addresses used by Finout, and then run the following command:

      Note: If you choose to use Key-pair authentication, there's no need to set a password when creating the user.

use role accountadmin;
CREATE WAREHOUSE if not exists finout_warehouse WITH WAREHOUSE_SIZE = 'XSMALL' AUTO_SUSPEND=30 INITIALLY_SUSPENDED=TRUE;
create role finout_role;
create user finout_user password = '<YOUR_PASSWORD_HERE>' default_role = finout_role;
grant USAGE ON WAREHOUSE finout_warehouse to role finout_role;
grant role finout_role to user finout_user;
grant imported privileges on database snowflake to role finout_role;
CREATE OR REPLACE NETWORK POLICY FINOUT_NETWORK_POLICY ALLOWED_IP_LIST = ('34.196.241.137', '212.59.64.84', '54.163.113.82', '44.196.75.137');
alter user finout_user SET NETWORK_POLICY = FINOUT_NETWORK_POLICY;

2. Integrate Snowflake in Finout

  1. Navigate to Settings > Cost Centers and click Add Cost Center. The Connect Accounts window appears. ​

  2. In Snowflake, click Connect Now. The Connect Snowflake wizard appears.

  3. Enter the following details:

    • Cost Center Name: Enter the name of the cost center associated with this Snowflake account.

    • Username: Provide the username of the dedicated Finout user created in Snowflake.

    • Snowflake URL: Enter your Snowflake account URL.

    • Warehouse: Specify the warehouse (finout_warehouse) that was created for Finout.

    • Credits Cost: Enter the Snowflake credits per the compute and storage services.

    • Role: Enter the role (finout_role) created for Finout in Snowflake.

    • Database: Specify the Snowflake database where your cost data resides.

    • Add the price per TB of storage and the price of compute credit.

      Note: This is only for multiple organization accounts. Single organization accounts are automatically created when credit cost data is provided

  4. Click Next. You are brought to the Authentication Method step.

  5. To connect Finout to Snowflake, you can authenticate using key-pair authentication or password-based authentication.

    • Key-Pair Generation: Finout will generate the key pair for you. We will securely store the private key, and you will receive the public key.

      1. Update Your Snowflake User Table:

        1. Open a worksheet in your Snowflake console.

        2. Use the public key provided by Finout to update your Snowflake user permissions/authentication method: ALTER USER <your_username> SET RSA_PUBLIC_KEY='<public_key>';

        3. Replace <your_username> with your Snowflake username.

        4. Replace <public_key> with the public key provided by Finout.

      2. Complete the Setup in Finout: Return to the Finout console, mark I have completed the ALTER USER command in Snowflake, and click Next. Snowflake is onboarded and you will see Snowflake data in Finout within 24 hours.

    • Password Authentication: Connect Finout to Snowflake without leaving the Finout console.

    You might choose the password option if:

    • Your environment doesn’t require the advanced security of key-pair authentication.

    • You’re looking for a simpler, faster setup with minimal configuration.

    • You prefer not to manage private keys or want to avoid the additional steps involved in generating key pairs.

      1. Enter your password that was created in Snowflake (Step 1).

      2. Click Next. Snowflake is onboarded, you will see Snowflake data in Finout within 24 hours.

Last updated

Still need help? Please feel free to reach out to our team at support@finout.io.