You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
title: Grant permissions to managed identity in Synapse workspace
3
-
description: An article that explains how to configure permissions for managed identity in Azure Synapse workspace.
3
+
description: Learn how to configure permissions for managed identity in Azure Synapse workspace.
4
4
author: meenalsri
5
5
ms.author: mesrivas
6
6
ms.reviewer: whhender
7
-
ms.date: 09/01/2022
7
+
ms.date: 02/11/2025
8
8
ms.service: azure-synapse-analytics
9
9
ms.subservice: security
10
10
ms.topic: how-to
@@ -13,60 +13,60 @@ ms.custom: subject-rbac-steps
13
13
14
14
# Grant permissions to workspace managed identity
15
15
16
-
This article teaches you how to grant permissions to the managed identity in Azure synapse workspace. Permissions, in turn, allow access to dedicated SQL pools in the workspace and ADLS Gen2 storage account through the Azure portal.
16
+
This article teaches you how to grant permissions to the managed identity in Azure Synapse workspace. Permissions, in turn, allow access to dedicated SQL pools in the workspace and Azure Data Lake Storage Gen2 account through the Azure portal.
17
17
18
-
> [!NOTE]
19
-
> This workspace managed identity will be referred to as managed identity through the rest of this document.
18
+
> [!NOTE]
19
+
> This workspace managed identity is referred to as managed identity through the rest of this document.
20
20
21
-
## Grant the managed identity permissions to ADLS Gen2 storage account
21
+
## Grant the managed identity permissions to Data Lake Storage account
22
22
23
-
An ADLS Gen2 storage account is required to create an Azure Synapse workspace. To successfully launch Spark pools in Azure Synapse workspace, the Azure Synapse managed identity needs the *Storage Blob Data Contributor* role on this storage account. Pipeline orchestration in Azure Synapse also benefits from this role.
23
+
A Data Lake Storage Gen2 account is required to create an Azure Synapse workspace. To successfully launch Spark pools in Azure Synapse workspace, the Azure Synapse managed identity needs the *Storage Blob Data Contributor* role on this storage account. Pipeline orchestration in Azure Synapse also benefits from this role.
24
24
25
25
### Grant permissions to managed identity during workspace creation
26
26
27
-
Azure Synapse will attempt to grant the Storage Blob Data Contributor role to the managed identity after you create the Azure Synapse workspace using Azure portal. You provide the ADLS Gen2 storage account details in the **Basics** tab.
27
+
Azure Synapse attempts to grant the *Storage Blob Data Contributor* role to the managed identity after you create the Azure Synapse workspace using the Azure portal. You provide the Data Lake Storage account details in the **Basics** tab.
28
28
29
29
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-1.png" alt-text="Screenshot of the Basics tab in workspace creation flow.":::
30
30
31
-
Choose the ADLS Gen2 storage account and filesystem in **Account name** and **File system name**.
31
+
Choose the Data Lake Storage Gen2 account and filesystem in **Account name** and **File system name**.
32
32
33
-
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-2.png" alt-text="Screenshot of providing the ADLS Gen2 storage account details.":::
33
+
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-2.png" alt-text="Screenshot of providing the Data Lake Storage Gen2 account details.":::
34
34
35
-
If the workspace creator is also **Owner** of the ADLS Gen2 storage account, then Azure Synapse will assign the *Storage Blob Data Contributor* role to the managed identity. You'll see the following message below the storage account details that you entered.
35
+
If the workspace creator is also *Owner* of the Data Lake Storage account, then Azure Synapse assigns the *Storage Blob Data Contributor* role to the managed identity. The following message appears.
36
36
37
37
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-3.png" alt-text="Screenshot of the successful storage blob data contributor assignment.":::
38
38
39
-
If the workspace creator isn't the owner of the ADLS Gen2 storage account, then Azure Synapse doesn't assign the *Storage Blob Data Contributor* role to the managed identity. The message appearing below the storage account details notifies the workspace creator that they don't have sufficient permissions to grant the *Storage Blob Data Contributor* role to the managed identity.
39
+
If the workspace creator isn't the owner of the Data Lake Storage account, then Azure Synapse doesn't assign the *Storage Blob Data Contributor* role to the managed identity. The following message notifies the workspace creator that they don't have sufficient permissions to grant the *Storage Blob Data Contributor* role to the managed identity.
40
40
41
41
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-4.png" alt-text="Screenshot of an unsuccessful storage blob data contributor assignment, with the error box highlighted.":::
42
42
43
-
As the message states, you can't create Spark pools unless the *Storage Blob Data Contributor* is assigned to the managed identity.
43
+
You can't create Spark pools unless the *Storage Blob Data Contributor* is assigned to the managed identity.
44
44
45
45
### Grant permissions to managed identity after workspace creation
46
46
47
-
During workspace creation, if you don't assign the *Storage Blob Data contributor* to the managed identity, then the **Owner** of the ADLS Gen2 storage account manually assigns that role to the identity. The following steps will help you to accomplish manual assignment.
47
+
During workspace creation, if you don't assign the *Storage Blob Data contributor* to the managed identity, then the *Owner* of the Data Lake Storage Gen2 account manually assigns that role to the identity. The following steps help you to accomplish manual assignment.
48
+
49
+
#### Step 1: Navigate to the Data Lake Storage Gen2 account
48
50
49
-
#### Step 1: Navigate to the ADLS Gen2 storage account in Azure portal
51
+
In the Azure portal, open the Data Lake Storage Gen2 storage account and select **Containers** from the left navigation. You only need to assign the *Storage Blob Data Contributor* role at the container or filesystem level.
50
52
51
-
In Azure portal, open the ADLS Gen2 storage account and select **Overview** from the left navigation. You'll only need to assign The *Storage Blob Data Contributor* role at the container or filesystem level. Select **Containers**.
52
-
53
-
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-5.png" alt-text="Screenshot of the Azure portal, of the Overview of the ADLS Gen2 storage account.":::
53
+
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-5.png" alt-text="Screenshot of the Azure portal, of the Overview of the Data Lake Storage Gen2 account.":::
54
54
55
55
#### Step 2: Select the container
56
56
57
-
The managed identity should have data access to the container (file system) that was provided when the workspace was created. You can find this container or file system in Azure portal. Open the Azure Synapse workspace in Azure portal and select the **Overview** tab from the left navigation.
57
+
The managed identity should have data access to the container (file system) that was provided when the workspace was created. You can find this container or file system in the Azure portal. Open the Azure Synapse workspace in the Azure portal and select the **Overview** tab from the left navigation.
58
58
59
-
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-7.png" alt-text="Screenshot of the Azure portal showing the name of the ADLS Gen2 storage file 'contosocontainer'.":::
59
+
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-7.png" alt-text="Screenshot of the Azure portal showing the name of the Data Lake Storage Gen2 file 'contosocontainer'.":::
60
60
61
61
Select that same container or file system to grant the *Storage Blob Data Contributor* role to the managed identity.
62
62
63
63
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-6.png" alt-text="Screenshot that shows the container or file system that you should select.":::
64
64
65
65
#### Step 3: Open Access control and add role assignment
66
66
67
-
1. Select **Access control (IAM)**.
67
+
1. Select **Access control (IAM)** from the left navigation.
68
68
69
-
1. Select **Add** > **Add role assignment** to open the Add role assignment page.
69
+
1. Select **Add** > **Add role assignment** to open the **Add role assignment** page.
70
70
71
71
1. Assign the following role. For detailed steps, see [Assign Azure roles using the Azure portal](../../role-based-access-control/role-assignments-portal.yml).
72
72
@@ -85,50 +85,52 @@ Select that same container or file system to grant the *Storage Blob Data Contri
85
85
86
86
#### Step 4: Verify that the Storage Blob Data Contributor role is assigned to the managed identity
87
87
88
-
Select **Access Control(IAM)** and then select **Role assignments**.
88
+
Select **Access Control(IAM)** and then select **Role assignments**.
89
89
90
90
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-14.png" alt-text="Screenshot of the Role Assignments button in the Azure portal, used to verify role assignment.":::
91
91
92
-
You should see your managed identity listed under the **Storage Blob Data Contributor** section with the *Storage Blob Data Contributor* role assigned to it.
93
-
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-15.png" alt-text="Screenshot of the Azure portal, showing ADLS Gen2 storage account container selection.":::
92
+
You should see your managed identity listed under the **Storage Blob Data Contributor** section with the *Storage Blob Data Contributor* role assigned to it.
93
+
94
+
:::image type="content" source="./media/how-to-grant-workspace-managed-identity-permissions/configure-workspace-managed-identity-15.png" alt-text="Screenshot of the Azure portal, showing Data Lake Storage Gen2 account container selection.":::
94
95
95
96
#### Alternative to Storage Blob Data Contributor role
96
97
97
-
Instead of granting yourself a Storage Blob Data Contributor role, you can also grant more granular permissions on a subset of files.
98
+
Instead of granting yourself a *Storage Blob Data Contributor* role, you can also grant more granular permissions on a subset of files.
98
99
99
100
All users who need access to some data in this container also must have EXECUTE permission on all parent folders up to the root (the container).
100
101
101
-
Learn more about how to [set ACLs in Azure Data Lake Storage Gen2](../../storage/blobs/data-lake-storage-explorer-acl.md).
102
+
To learn more, see [Use Azure Storage Explorer to manage ACLs in Azure Data Lake Storage](../../storage/blobs/data-lake-storage-explorer-acl.md).
102
103
103
104
> [!NOTE]
104
105
> Execute permission on the container level must be set within Data Lake Storage Gen2.
105
106
> Permissions on the folder can be set within Azure Synapse.
106
107
107
-
If you want to query data2.csv in this example, the following permissions are needed:
108
+
If you want to query *data2.csv* in this example, the following permissions are needed:
108
109
109
-
- Execute permission on container
110
-
- Execute permission on folder1
111
-
- Read permission on data2.csv
110
+
- Execute permission on container
111
+
- Execute permission on folder1
112
+
- Read permission on data2.csv
112
113
113
114
:::image type="content" source="../sql/media/resources-self-help-sql-on-demand/folder-structure-data-lake.png" alt-text="Diagram that shows permission structure on data lake.":::
114
115
115
116
1. Sign in to Azure Synapse with an admin user that has full permissions on the data you want to access.
117
+
116
118
1. In the data pane, right-click the file and select **Manage access**.
117
119
118
120
:::image type="content" source="../sql/media/resources-self-help-sql-on-demand/manage-access.png" alt-text="Screenshot that shows the manage access option.":::
119
121
120
-
1. Select at least **Read** permission. Enter the user's UPN or object ID, for example, [email protected]. Select **Add**.
122
+
1. Select at least **Read** permission. Enter the user's UPN or object ID, for example, `[email protected]`. Select **Add**.
123
+
121
124
1. Grant read permission for this user.
122
125
123
126
:::image type="content" source="../sql/media/resources-self-help-sql-on-demand/grant-permission.png" alt-text="Screenshot that shows granting read permissions.":::
124
127
125
128
> [!NOTE]
126
129
> For guest users, this step needs to be done directly with Azure Data Lake because it can't be done directly through Azure Synapse.
127
130
128
-
## Next steps
129
-
130
-
Learn more about [Workspace managed identity](../../data-factory/data-factory-service-identity.md?context=/azure/synapse-analytics/context/context&tabs=synapse-analytics)
131
+
## Related content
131
132
133
+
-[Managed identity for Azure Data Factory](../../data-factory/data-factory-service-identity.md?context=/azure/synapse-analytics/context/context&tabs=synapse-analytics)
132
134
-[Best practices for dedicated SQL pools](../sql/best-practices-dedicated-sql-pool.md)
133
135
-[Troubleshoot serverless SQL pool in Azure Synapse Analytics](../sql/resources-self-help-sql-on-demand.md)
0 commit comments