Prerequisites
You need an Unblocked admin account and a Snowflake administrator who can create roles and users and grant access to your warehouse and data. Unblocked connects using workload identity federation. Each Snowflake account can connect to only one Unblocked installation.Set up Snowflake
1
Open the Snowflake connection page
In the Unblocked sidebar, click Settings, then Data Sources, then Connect Another, then search for and select Snowflake.Keep this page open while you configure Snowflake. It contains a user creation script generated for this connection.

2
Create a read-only role
In Snowflake, run the following SQL as an administrator. Replace If you already have a dedicated read-only role, use it in place of
<your_warehouse> with the warehouse Unblocked should use:UNBLOCKED_READONLY_ROLE throughout these instructions.3
Create the service user

<READONLY_ROLE> with UNBLOCKED_READONLY_ROLE and <WAREHOUSE> with your warehouse name, then run the script in Snowflake.Keep the generated UNBLOCKED_... user name and AWS role ARN unchanged. The user name ties the connection to your Unblocked organization. Use the script from your own connection page, not the example shown in the screenshot.Grant the read-only role to the new user. Replace <generated_user_name> with the exact user name from the script:DEFAULT_ROLE in the creation script does not grant the role to the user; you must run this grant too.4
Grant access to your data
Grant the role Repeat this step for each additional database or schema you want Unblocked to access. For individual tables or views, or an entire database, use the optional grants below.
USAGE on the database and schema you want Unblocked to index, plus SELECT on current and future tables. Replace <your_database> and <your_schema> with your own values:Grant access to a single table or view (optional)
Grant access to a single table or view (optional)
If you only want Unblocked to access specific tables or views instead of an entire schema, grant Repeat the last two grants for each additional table or view you want Unblocked to access.
SELECT on those objects individually instead of the schema-wide grants above. Replace <your_database>, <your_schema>, <your_table>, and <your_view> with your own values:Grant access to an entire database (optional)
Grant access to an entire database (optional)
If you want Unblocked to access every schema, table, and view in a database, including ones created later, grant access at the database level instead of the schema level. Replace
<your_database> with your own value:Revoke Unblocked's access (optional)
Revoke Unblocked's access (optional)
To remove this connection’s access, delete the generated service user. Replace
<generated_user_name> with the exact user name from your connection’s creation script:Connect in Unblocked
1
Enter your account identifier
Run this query in Snowflake to get your account identifier:Return to the Snowflake connection page in Unblocked. Paste the
SNOWFLAKE_ACCOUNT value into Account identifier and click Connect.You can also paste your Snowflake web URL. It contains your organization name followed by your account name: https://app.snowflake.com/<organization>/<account>/.2
Select your databases
After connecting, Unblocked opens the Snowflake settings page. Select the databases you want Unblocked to access, then click Save Settings. Unblocked starts indexing your selected databases.

3
Wait for indexing to complete
Unblocked shows Processing for Snowflake on the Data Sources page while indexing is in progress. Unblocked will not use Snowflake to answer questions until indexing completes.
