Snowflake
Integrate via Direct Connect
Steps
- Create a role, name it
KUBIT.CREATE ROLE KUBIT; - Generate a key-pair (here's Snowflake's full guide for reference)
openssl genrsa 2048 | openssl pkcs8 -topk8 -v2 des3 -inform PEM -out rsa_key.p8 openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub - Create a user and name it
KUBIT.
Kubit team will generate and share a password, which you should use to create the user.CREATE USER KUBIT RSA_PUBLIC_KEY ='MIIBIjANBgkqh...' DEFAULT_ROLE=KUBIT - (Optional) Share your Snowflake account locator, private key and key password with the Kubit team if you need help setting up your Kubit environment.
- Create a database called
KUBIT.CREATE DATABASE KUBIT; - Make the
KUBITrole owner of theKUBITdatabase. This will allow us to create and execute tasks that are only available to an owner role.GRANT OWNERSHIP ON DATABASE KUBIT TO ROLE KUBIT; - Create a Data Warehouse called
KUBIT(size depends on your data volume)- Grant the
KUBITrole the following privileges:MONITOR | USAGE | OPERATECREATE OR REPLACE WAREHOUSE KUBIT WAREHOUSE_SIZE=... INITIALLY_SUSPENDED=TRUE; GRANT MONITOR ON WAREHOUSE KUBIT TO ROLE KUBIT; GRANT USAGE ON WAREHOUSE KUBIT TO ROLE KUBIT; GRANT OPERATE ON WAREHOUSE KUBIT TO ROLE KUBIT;
- Grant the
- Add read-only (SELECT on FUTURE) permissions to the
KUBITrole to the schema(s) containing the views interfacing with Kubit.
Best PracticeCreate one more user role and warehouse for development purposes in order to isolate the impact on the production environment and avoid accidents.
Updated 6 days ago