Skip to content

Commit 55fe8f8

Browse files
Merge pull request #2201 from elementary-data/fix-order-of-storage-access-dbx
DBX: Reorder storage access options; Marked legacy
2 parents 8f53f2a + 4eab9ed commit 55fe8f8

1 file changed

Lines changed: 30 additions & 25 deletions

File tree

docs/snippets/dwh/databricks/databricks_permissions_and_security.mdx

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -46,31 +46,7 @@ GRANT SELECT ON TABLE system.billing.list_prices TO `<service_principal_app_id>`
4646
Elementary requires access to the table history in order to enable automated monitors such as volume and freshness monitors.
4747
You can configure this in one of the following ways:
4848

49-
#### Option 1: Fetch history using `DESCRIBE HISTORY`
50-
51-
Elementary can fetch the table history by running `DESCRIBE HISTORY` queries on your Databricks warehouse.
52-
In the Elementary UI, choose **None** under **Storage access method**.
53-
54-
This require granting SELECT access on your tables. This is a Databricks limitation - Elementary **never** reads any data from your tables, only metadata. However, there isn't
55-
today any table-level metadata-only permission available in Databricks, so SELECT is required.
56-
57-
To grant the access, use the following SQL statements:
58-
59-
```sql
60-
GRANT USE CATALOG, USE SCHEMA, SELECT ON catalog <catalog> to `<service_principal_app_id>`;
61-
```
62-
63-
64-
#### Option 2: Credentials vending
65-
66-
Elementary can access the storage using temporary credentials issued by Databricks through [credential vending](https://docs.databricks.com/aws/en/external-access/credential-vending).
67-
In the Elementary UI, choose **Credentials vending** under **Storage access method**.
68-
69-
This requires granting `EXTERNAL USE SCHEMA` on the relevant schemas.
70-
71-
When using this option, Elementary does not read the table data itself. It only reads the Delta transaction log, which contains metadata about the transactions.
72-
73-
#### Option 3: Direct storage access
49+
#### Option 1: Direct storage access
7450

7551
Elementary can access the storage directly using credentials that you configure.
7652
In the Elementary UI, choose **Direct storage access** under **Storage access method**.
@@ -135,3 +111,32 @@ After choosing **Direct storage access**, select **Secret access key** under **S
135111
2. Enable programmatic access.
136112
3. Attach the same read-only S3 policy shown above.
137113
4. Provide the AWS access key ID and secret access key in the Elementary UI.
114+
115+
116+
#### Option 2: Credentials vending
117+
118+
Elementary can access the storage using temporary credentials issued by Databricks through [credential vending](https://docs.databricks.com/aws/en/external-access/credential-vending).
119+
In the Elementary UI, choose **Credentials vending** under **Storage access method**.
120+
121+
This requires granting `EXTERNAL USE SCHEMA` on the relevant schemas.
122+
123+
When using this option, Elementary does not read the table data itself. It only reads the Delta transaction log, which contains metadata about the transactions.
124+
125+
126+
#### Option 3: Fetch history using `DESCRIBE HISTORY` - **DEPRECATED**
127+
128+
Elementary can fetch the table history by running `DESCRIBE HISTORY` queries on your Databricks warehouse.
129+
In the Elementary UI, choose **None** under **Storage access method**.
130+
131+
This require granting SELECT access on your tables. This is a Databricks limitation - Elementary **never** reads any data from your tables, only metadata. However, there isn't
132+
today any table-level metadata-only permission available in Databricks, so SELECT is required.
133+
134+
To grant the access, use the following SQL statements:
135+
136+
```sql
137+
GRANT USE CATALOG, USE SCHEMA, SELECT ON catalog <catalog> to `<service_principal_app_id>`;
138+
```
139+
140+
<Warning>
141+
This option is deprecated, and will soon be removed.
142+
</Warning>

0 commit comments

Comments
 (0)