Skip to main content
Help & Documentation

Connect to Databricks

What your Databricks admin sets up, how you sign in, how live queries work, what the semantic layer switch reads, and how to fix the errors you're most likely to hit.

10 min readUpdated November 5, 2026

Before you start

Use Sign in with Databricks: it's Databricks' recommended method, and each person queries with their own Unity Catalog permissions.

You'll need:

  • A Databricks workspace with Unity Catalog enabled.
  • A SQL warehouse. We recommend serverless: it starts in seconds, so your first query doesn't wait on a cold cluster.
  • Your workspace's server hostname, for example dbc-1234abcd.cloud.databricks.com or adb-1234567890.1.azuredatabricks.net.
  • For OAuth only: a Databricks account admin for a one-time, 2-minute app registration.
MethodWho it signs in asSetupPick it when
Sign in with Databricks (OAuth)Each Golden user, as themselvesAccount admin registers an app once; each user signs inYou want per-user permissions, row filters and column masks. Recommended.
Authenticate with GoogleThe person who authorized it, sharedA federation policy that trusts GoogleYour team signs in to Databricks with Google.
Personal access token (legacy)The token's owner, sharedPaste a tokenA quick trial. Databricks recommends OAuth over tokens.

Privileges Golden needs

Golden only reads. A non-admin user needs 4 grants, and nothing else:

GrantOnWhy
CAN USEThe SQL warehouseRun queries
USE CATALOGEach catalog you'll analyzeSee the catalog
USE SCHEMAEach schema you'll analyzeSee its tables
SELECTThe tables and views you'll analyze (or the schema)Read the rows

A Unity Catalog admin can grant the last 3 in SQL. Grant to a group rather than to each person:

sql
GRANT USE CATALOG ON CATALOG sales TO `golden-analysts`;
GRANT USE SCHEMA ON SCHEMA sales.reporting TO `golden-analysts`;
GRANT SELECT ON SCHEMA sales.reporting TO `golden-analysts`;

With OAuth, these are each person's own grants, so Golden shows every user exactly what Databricks lets them see. With a token or Google, everyone in Golden sees what the connection's owner can see.

An account admin registers Golden once; after that, each person connects in one click. Golden uses a public OAuth client with PKCE, so no secret is ever stored.

In Golden:

  1. Go to Data → Add connection → Databricks. Sign in with Databricks is preselected.
  2. Enter your server hostname and, optionally, a name like Production Databricks.
  3. Copy the redirect URL Golden shows you.

In the Databricks account console (a Databricks account admin; this lives in the account console, not a workspace setting):

  1. Open Settings → App connections → Add connection.
  2. Paste Golden's redirect URL.
  3. Select the SQL access scope.
  4. Uncheck "Generate a secret." Golden signs in with PKCE and needs no secret.
  5. Save, then copy the Client ID.

Back in Golden:

  1. Paste the Client ID and save.
  2. Click Connect your account and sign in to Databricks in the popup. Golden shows Connected as your name.
  3. Create a dataset and pick the SQL warehouse, catalog and schema to query.

Everyone else on your team just opens the connection and clicks Connect your account. Golden refreshes each person's token in the background, so nobody gets signed out mid-analysis.

Set up Authenticate with Google

If your team signs in to Databricks with Google, Golden can trade a Google sign-in for a Databricks token. The connection is shared: everyone in Golden queries as the person who authorized it.

In the Databricks account console (account admin, once):

  1. Open Settings → Security → Federation policies and create an account-wide policy.
  2. Set the issuer to https://accounts.google.com.
  3. Set the audience to Golden's Google client ID: [GOLDEN_GOOGLE_CLIENT_ID].
  4. Set the subject claim to email, so the Google address maps to the matching Databricks user.

In Golden:

  1. Go to Data → Add connection → Databricks and choose Authenticate with Google.
  2. Enter the server hostname and HTTP path (in Databricks: SQL Warehouses → your warehouse → Connection details).
  3. Click Authenticate with Google, sign in, and save.

The person who authorizes needs the grants in Privileges Golden needs. If their Google access is revoked, Golden asks them to reconnect.

Set up a personal access token (legacy)

Tokens still work and take about 30 seconds, but Databricks recommends OAuth. Everyone in Golden queries as the token's owner.

  1. In Databricks, open your profile → Settings → Developer → Access tokens → Generate new token. Give it a lifetime your security team accepts.
  2. Copy the server hostname and HTTP path from SQL Warehouses → your warehouse → Connection details.
  3. In Golden, go to Data → Add connection → Databricks and choose Personal access token (legacy).
  4. Paste the hostname, HTTP path and token. Optionally set a default catalog and schema.
  5. Save. Golden tests the connection before it stores anything.

Golden encrypts the token at rest. Better still, create it for a service principal with only the grants above, so the connection doesn't break when someone leaves.

Troubleshooting and disconnecting

What you seeLikely causeFix
Databricks rejects the redirect during sign-inThe redirect URL in the app connection doesn't match Golden's exactlyCopy it from Golden again and paste it into the app connection
Sign-in fails with an invalid client errorA secret was generated, or the Client ID was mistypedRe-create the app connection with "Generate a secret" unchecked
A table is missing from the listNo USE SCHEMA or SELECT on itAsk your Unity Catalog admin for the grants above
The first query is slow or times outA classic warehouse is starting upRetry in a minute, or switch to a serverless warehouse
Golden asks you to reconnectYour token or Google grant was revoked or expiredClick Reconnect and sign in again

Find Golden's queries: in Databricks Query History, the Source column reads GoldenAnalytics_Golden.

Disconnect: remove the connection in Golden. For OAuth, an account admin can also delete Golden's app connection in the account console, which signs every user out at once. For a token, revoke it under Access tokens.

Notes for reviewers (delete before publishing)

The steps are written from the code on main plus PRs #4288 and #4290. Resolve these before it goes to customers:

  • [ ] Fill in [GOLDEN_GOOGLE_CLIENT_ID]. The value is the GOOGLE_CLIENT_ID env var, which isn't in the repo.
  • [ ] Confirm the Databricks console labels (App connections, Federation policies, Access tokens) against a live account; Databricks renames them often.
  • [ ] Publish only after #4290 merges, or the "preselected" line in step 1 is wrong. Same for #4288 and the Query History line.
  • [ ] OAuth is behind the DatabricksOauthV1Feature flag. Customers without it won't see Sign in with Databricks until the flag is on for everyone.
  • [ ] The Google exchange asks Databricks for the all-apis scope. The partner framework asks for least-privilege scopes, so consider narrowing it to sql.
  • [ ] Databricks' validation wants this as live documentation; publish it through the in-app help editor and link it from the partner submission.