This guide demonstrates how to configure Azure Databricks Unity Catalog using Azure Data Lake Storage Gen2 (ADLS Gen2) with Azure Managed Identity Authentication.
Instead of using storage account access keys or service principals, this approach leverages an Azure Databricks Access Connector with Managed Identity, providing secure and scalable access to Azure Storage.
By the end of this guide, you will have a fully functional Unity Catalog environment that uses Azure Managed Identity for secure authentication.
After completing this guide, you will be able to:


Before starting, ensure you have:
Open your Azure Databricks Workspace and navigate to Catalog Explorer.

Click Create → Catalog to start creating a new Unity Catalog.

If a managed storage location is not configured, Databricks displays the following error.

Note: Configure a Storage Credential and External Location before creating the catalog.
Navigate to your Azure Storage Account and create a new container.
Example: uc-data

Inside the container, create a directory that will be used as the managed storage location.
Example: ecommerce_catalog


Navigate to the Azure Resource Group where your Databricks resources are deployed.
Search for Access Connector for Azure Databricks from the Azure Marketplace.

Provide the required information such as Subscription, Resource Group, Name, and Region.

Wait until the deployment is completed successfully.

Open the Storage Account and navigate to Access Control (IAM).

Click Add → Add Role Assignment.

Choose the Storage Blob Data Contributor role.

Choose Managed Identity and select the Azure Databricks Access Connector.

Open the Access Connector resource to view its properties.

Copy the Resource ID from the Access Connector Overview page.

In Databricks Catalog Explorer, create a new Storage Credential using the copied Resource ID.

Create a new External Location using the Storage Credential.

Verify that the External Location has been created successfully.

Run the following SQL command to create the Unity Catalog.
CREATE CATALOG IF NOT EXISTS ecommerce
MANAGED LOCATION
'abfss://uc-data@<storage-account>.dfs.core.windows.net/ecommerce_catalog';

Open Catalog Explorer and verify that the new catalog has been created successfully.


This guide is implemented using the following Azure Databricks notebook.
| Notebook | Description |
|---|---|
| 📘 Setup Catalog | Creates the Unity Catalog, Storage Credential, and External Location using Azure Managed Identity. |
The notebook automates the complete Unity Catalog setup and performs the following tasks:
Open Notebook
│
▼
Create Storage Credential
│
▼
Create External Location
│
▼
Create Unity Catalog
│
▼
Verify Catalog Creation
The notebook executes all Unity Catalog configuration steps and validates that the catalog is created successfully.
Note: The notebook can be executed multiple times because it uses
IF NOT EXISTSwhere applicable, making it safe to rerun during development and testing.
Azure Subscription
│
▼
Azure Resource Group
│
┌──────────────────────┴──────────────────────┐
│ │
▼ ▼
Azure Databricks Workspace Storage Account (ADLS Gen2)
│ │
▼ ▼
Unity Catalog Container (uc-data)
│ │
▼ ▼
Storage Credential ecommerce_catalog
│
▼
External Location
│
▼
Managed Tables
Azure Subscription
│
└── Resource Group
│
├── Azure Databricks Workspace
│
├── Storage Account
│ │
│ └── uc-data
│ │
│ └── ecommerce_catalog
│
├── Azure Databricks Access Connector
│
├── Storage Credential
│
├── External Location
│
└── Unity Catalog
│
└── ecommerce
The following table tracks the overall implementation process for setting up Unity Catalog with Azure Managed Identity.
| Step | Task | Status |
|---|---|---|
| 1 | Open Azure Databricks Catalog Explorer | ✅ |
| 2 | Create a New Unity Catalog | ✅ |
| 3 | Understand Managed Storage Requirement | ✅ |
| 4 | Create ADLS Gen2 Storage Container | ✅ |
| 5 | Create Managed Storage Directory | ✅ |
| 6 | Navigate to Azure Resource Group | ✅ |
| 7 | Create Azure Databricks Access Connector | ✅ |
| 8 | Deploy the Access Connector | ✅ |
| 9 | Verify Connector Deployment | ✅ |
| 10 | Assign Storage Blob Data Contributor Role | ✅ |
| 11 | Configure Managed Identity Permissions | ✅ |
| 12 | Copy Access Connector Resource ID | ✅ |
| 13 | Create Storage Credential | ✅ |
| 14 | Create External Location | ✅ |
| 15 | Create Unity Catalog | ✅ |
Verify that all required Azure and Databricks resources have been successfully configured.
| Resource | Purpose | Status |
|---|---|---|
| Azure Storage Account | Stores Unity Catalog managed data | ✅ |
| ADLS Gen2 Container | Container for catalog data | ✅ |
| Managed Storage Directory | Dedicated catalog storage location | ✅ |
| Azure Databricks Workspace | Analytics and compute platform | ✅ |
| Azure Databricks Access Connector | Provides Managed Identity authentication | ✅ |
| Managed Identity | Secure authentication to Azure Storage | ✅ |
| Storage Blob Data Contributor Role | Grants access to ADLS Gen2 | ✅ |
| Storage Credential | Connects Unity Catalog to Azure Storage | ✅ |
| External Location | Maps ADLS Gen2 path to Unity Catalog | ✅ |
| Unity Catalog | Centralized governance layer | ✅ |
| Issue | Solution |
|---|---|
| Metastore storage root URL does not exist | Configure Storage Credential and External Location before creating the catalog. |
| Permission Denied | Verify the Storage Blob Data Contributor role assignment. |
| Invalid Resource ID | Copy the complete Resource ID from the Access Connector Overview page. |
| Unable to create External Location | Verify the ADLS path and Storage Credential configuration. |
| Catalog creation fails | Ensure the Managed Location path exists in ADLS Gen2. |
| Technology | Purpose |
|---|---|
| Azure Databricks | Data Engineering Platform |
| Unity Catalog | Centralized Data Governance |
| Azure Data Lake Storage Gen2 | Cloud Storage |
| Azure Managed Identity | Secure Authentication |
| Azure RBAC | Authorization |
| Azure Databricks Access Connector | Managed Identity Integration |
| SQL | Catalog Creation |
| Microsoft Entra ID | Identity Management |