Permissions issue when trying to access DLT-managed streaming tables and materialized views in Unity Catalog

Grant required Unity Catalog permissions and apply a compatible compute type.

Written by brock.baurer

Last published at: November 15th, 2024

Problem

When trying to query Delta Live Tables-managed materialized views and streaming tables in Unity Catalog outside of a DLT Pipeline, you encounter a permissions issue. 

 

Cause

Only a subset of compute types can fully honor the fine-grained access control supported by Unity Catalog: Shared access mode (including serverless compute) and Single User (also known as Assigned) access mode with fine-grained access control enabled. 

 

Solution

  1. Grant Unity Catalog USE_CATALOG  and USE_SCHEMA permissions on the catalog and schema, respectively.
  2. Grant SELECT permissions on the materialized view and/or streaming table to the user or service principal identity.
  3. Apply your choice of compute cluster to that identity which can fully honor those permissions. 

 

For more information, review the Use Unity Catalog with your Delta Live Tables pipelines (AWSAzureGCP) and Fine-grained access control on Single User compute (AWSAzureGCP) documentation.