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
Copy file name to clipboardExpand all lines: articles/storage/blobs/data-lake-storage-access-control-model.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ author: normesta
6
6
7
7
ms.service: azure-data-lake-storage
8
8
ms.topic: conceptual
9
-
ms.date: 11/15/2024
9
+
ms.date: 11/26/2024
10
10
ms.author: normesta
11
11
ms.custom: engagement-fy23
12
12
---
@@ -21,7 +21,7 @@ Data Lake Storage supports the following authorization mechanisms:
21
21
- Attribute-based access control (Azure ABAC)
22
22
- Access control lists (ACL)
23
23
24
-
Shared Key, account SAS, and service SAS authorization grants access to a user (or application) without requiring them to have an identity in Microsoft Entra ID. With these two forms of authentication, Azure RBAC, Azure ABAC, and ACLs have no effect. ACLs can be applied to user delegated SAS tokens because those tokens are secured with Microsoft Entra credentials. See [Shared Key and SAS authorization](#shared-key-and-shared-access-signature-sas-authorization).
24
+
Shared Key, account SAS, and service SAS authorization grants access to a user (or application) without requiring them to have an identity in Microsoft Entra ID. With these forms of authentication, Azure RBAC, Azure ABAC, and ACLs have no effect. ACLs can be applied to user delegated SAS tokens because those tokens are secured with Microsoft Entra credentials. See [Shared Key and SAS authorization](#shared-key-and-shared-access-signature-sas-authorization).
25
25
26
26
Azure RBAC and ACL both require the user (or application) to have an identity in Microsoft Entra ID. Azure RBAC lets you grant "coarse-grain" access to storage account data, such as read or write access to **all** of the data in a storage account. Azure ABAC allows you to refine RBAC role assignments by adding conditions. For example, you can grant read or write access to all data objects in a storage account that have a specific tag. ACLs let you grant "fine-grained" access, such as write access to a specific directory or file.
Copy file name to clipboardExpand all lines: articles/storage/blobs/data-lake-storage-acl-azure-portal.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ author: normesta
6
6
7
7
ms.service: azure-data-lake-storage
8
8
ms.topic: how-to
9
-
ms.date: 11/18/2024
9
+
ms.date: 11/26/2024
10
10
ms.author: normesta
11
11
---
12
12
@@ -66,7 +66,7 @@ To learn about how to use ACLs and Azure roles together, see [Access control mod
66
66
> [!NOTE]
67
67
> We recommend that you create a security group in Microsoft Entra ID, and then maintain permissions on the group rather than for individual users. For details on this recommendation, as well as other best practices, see [Access control model in Azure Data Lake Storage](data-lake-storage-access-control-model.md).
68
68
69
-
8. To manage the *default ACL*, select the **default permissions** tab, and then select the **Configure default permissions**checkbook.
69
+
8. To manage the *default ACL*, select the **default permissions** tab, and then select the **Configure default permissions**checkbox.
70
70
71
71
> [!TIP]
72
72
> A default ACL is a template of an ACL that determines the access ACLs for any child items that are created under a directory. A blob doesn't have a default ACL, so this tab appears only for directories.
Copy file name to clipboardExpand all lines: articles/storage/blobs/data-lake-storage-acl-cli.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ author: normesta
7
7
8
8
ms.service: azure-data-lake-storage
9
9
ms.topic: how-to
10
-
ms.date: 11/18/2024
10
+
ms.date: 11/26/2024
11
11
ms.author: normesta
12
12
ms.reviewer: prishet
13
13
ms.devlang: azurecli
@@ -32,15 +32,15 @@ ACL inheritance is already available for new child items that are created under
32
32
33
33
- One of the following security permissions:
34
34
35
-
- A provisioned Microsoft Entra ID [security principal](../../role-based-access-control/overview.md#security-principal) that has been assigned the [Storage Blob Data Owner](../../role-based-access-control/built-in-roles.md#storage-blob-data-owner) role, scoped to the target container, storage account, parent resource group, or subscription..
35
+
- A provisioned Microsoft Entra ID [security principal](../../role-based-access-control/overview.md#security-principal) that has been assigned the [Storage Blob Data Owner](../../role-based-access-control/built-in-roles.md#storage-blob-data-owner) role, scoped to the target container, storage account, parent resource group, or subscription.
36
36
37
37
- Owning user of the target container or directory to which you plan to apply ACL settings. To set ACLs recursively, this includes all child items in the target container or directory.
38
38
39
39
## Ensure that you have the correct version of Azure CLI installed
40
40
41
41
1. Open the [Azure Cloud Shell](../../cloud-shell/overview.md), or if you've [installed](/cli/azure/install-azure-cli) the Azure CLI locally, open a command console application such as Windows PowerShell.
42
42
43
-
2. Verify that the version of Azure CLI that have installed is `2.14.0` or higher by using the following command.
43
+
2. Verify that the version of Azure CLI that you have installed is `2.14.0` or higher by using the following command.
44
44
45
45
```azurecli
46
46
az --version
@@ -62,7 +62,7 @@ ACL inheritance is already available for new child items that are created under
62
62
63
63
To learn more about different authentication methods, see [Authorize access to blob or queue data with Azure CLI](./authorize-data-operations-cli.md).
64
64
65
-
2. If your identity is associated with more than one subscription, and you are not prompted to select the subscription, then set your active subscription to subscription of the storage account that you want operate upon. In this example, replace the `<subscription-id>` placeholder value with the ID of your subscription.
65
+
2. If your identity is associated with more than one subscription, and you are not prompted to select the subscription, then set your active subscription to the subscription of the storage account that you want to operate upon. In this example, replace the `<subscription-id>` placeholder value with the ID of your subscription.
66
66
67
67
```azurecli
68
68
az account set --subscription <subscription-id>
@@ -99,7 +99,7 @@ In this example, the owning user has read, write, and execute permissions. The o
99
99
100
100
## Set ACLs
101
101
102
-
When you *set* an ACL, you **replace** the entire ACL including all of it's entries. If you want to change the permission level of a security principal or add a new security principal to the ACL without affecting other existing entries, you should *update* the ACL instead. To update an ACL instead of replace it, see the [Update ACLs](#update-acls) section of this article.
102
+
When you *set* an ACL, you **replace** the entire ACL including all of its entries. If you want to change the permission level of a security principal or add a new security principal to the ACL without affecting other existing entries, you should *update* the ACL instead. To update an ACL instead of replace it, see the [Update ACLs](#update-acls) section of this article.
103
103
104
104
If you choose to *set* the ACL, you must add an entry for the owning user, an entry for the owning group, and an entry for all other users. To learn more about the owning user, the owning group, and all other users, see [Users and identities](data-lake-storage-access-control.md#users-and-identities).
105
105
@@ -175,7 +175,7 @@ This example updates an ACL entry with write permission.
To a update the ACL of a specific group or user, use their respective object IDs. For example, `group:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` or `user:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`.
178
+
To update the ACL of a specific group or user, use their respective object IDs. For example, `group:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` or `user:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`.
179
179
180
180
> [!NOTE]
181
181
> Updating the ACL of a single directory without updating the ACL of child items is not supported by the Azure CLI. To update the ACL of a directory without modifying the ACLs of all child items in that directory, use any of the other supported tools and SDKs. See [How to set ACLs](data-lake-storage-access-control.md#how-to-set-acls).
Copy file name to clipboardExpand all lines: articles/storage/blobs/data-lake-storage-acl-powershell.md
+9-9Lines changed: 9 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ author: normesta
6
6
7
7
ms.service: azure-data-lake-storage
8
8
ms.topic: how-to
9
-
ms.date: 11/18/2024
9
+
ms.date: 11/26/2024
10
10
ms.author: normesta
11
11
ms.reviewer: prishet
12
12
ms.devlang: powershell
@@ -31,7 +31,7 @@ ACL inheritance is already available for new child items that are created under
31
31
32
32
- One of the following security permissions:
33
33
34
-
- A provisioned Microsoft Entra ID [security principal](../../role-based-access-control/overview.md#security-principal) that has been assigned the [Storage Blob Data Owner](../../role-based-access-control/built-in-roles.md#storage-blob-data-owner) role, scoped to the target container, storage account, parent resource group, or subscription..
34
+
- A provisioned Microsoft Entra ID [security principal](../../role-based-access-control/overview.md#security-principal) that has been assigned the [Storage Blob Data Owner](../../role-based-access-control/built-in-roles.md#storage-blob-data-owner) role, scoped to the target container, storage account, parent resource group, or subscription.
35
35
36
36
- Owning user of the target container or directory to which you plan to apply ACL settings. To set ACLs recursively, this includes all child items in the target container or directory.
37
37
@@ -61,7 +61,7 @@ ACL inheritance is already available for new child items that are created under
61
61
Connect-AzAccount
62
62
```
63
63
64
-
2. If your identity is associated with more than one subscription, and you are not prompted to select the subscription, then set your active subscription to subscription of the storage account that you want operate upon. In this example, replace the `<subscription-id>` placeholder value with the ID of your subscription.
64
+
2. If your identity is associated with more than one subscription, and you are not prompted to select the subscription, then set your active subscription to the subscription of the storage account that you to want operate upon. In this example, replace the `<subscription-id>` placeholder value with the ID of your subscription.
@@ -110,7 +110,7 @@ In this example, the owning user has read, write, and execute permissions. The o
110
110
111
111
## Set ACLs
112
112
113
-
When you *set* an ACL, you **replace** the entire ACL including all of it's entries. If you want to change the permission level of a security principal or add a new security principal to the ACL without affecting other existing entries, you should *update* the ACL instead. To update an ACL instead of replace it, see the [Update ACLs](#update-acls) section of this article.
113
+
When you *set* an ACL, you **replace** the entire ACL including all of its entries. If you want to change the permission level of a security principal or add a new security principal to the ACL without affecting other existing entries, you should *update* the ACL instead. To update an ACL instead of replace it, see the [Update ACLs](#update-acls) section of this article.
114
114
115
115
If you choose to *set* the ACL, you must add an entry for the owning user, an entry for the owning group, and an entry for all other users. To learn more about the owning user, the owning group, and all other users, see [Users and identities](data-lake-storage-access-control.md#users-and-identities).
116
116
@@ -121,7 +121,7 @@ This section shows you how to:
121
121
122
122
### Set an ACL
123
123
124
-
Use the [Set-AzDataLakeGen2ItemAclObject](/powershell/module/az.storage/set-azdatalakegen2itemaclobject) cmdlet to create an ACL for the owning user, owning group, or other users. Then, use the[Update-AzDataLakeGen2Item](/powershell/module/az.storage/update-azdatalakegen2item) cmdlet to commit the ACL.
124
+
Use the [Set-AzDataLakeGen2ItemAclObject](/powershell/module/az.storage/set-azdatalakegen2itemaclobject) cmdlet to create an ACL for the owning user, owning group, or other users. Then, use the[Update-AzDataLakeGen2Item](/powershell/module/az.storage/update-azdatalakegen2item) cmdlet to commit the ACL.
125
125
126
126
This example sets the ACL on the root directory of a **container** for the owning user, owning group, or other users, and then prints the ACL to the console.
> If you want to set a **default** ACL entry, use the **-DefaultScope** parameter when you run the [Set-AzDataLakeGen2AclRecursive](/powershell/module/az.storage/set-azdatalakegen2aclrecursive) command. For example: `$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -Permission rwx -DefaultScope`.
197
+
> If you want to set a **default** ACL entry, use the **-DefaultScope** parameter when you run the [Set-AzDataLakeGen2ItemAclObject](/powershell/module/az.storage/set-azdatalakegen2itemaclobject) command. For example: `$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -Permission rwx -DefaultScope`.
198
198
199
199
To see an example that sets ACLs recursively in batches by specifying a batch size, see the [Set-AzDataLakeGen2AclRecursive](/powershell/module/az.storage/set-azdatalakegen2aclrecursive) reference article.
200
200
@@ -209,20 +209,20 @@ This section shows you how to:
209
209
210
210
### Update an ACL
211
211
212
-
First, get the ACL. Then, use the [Set-AzDataLakeGen2ItemAclObject](/powershell/module/az.storage/set-azdatalakegen2itemaclobject) cmdlet to add or update an ACL entry. Use the [Set-AzDataLakeGen2ItemAclObject](/powershell/module/az.storage/set-azdatalakegen2itemaclobject)` cmdlet to commit the ACL.
212
+
First, get the ACL. Then, use the [Set-AzDataLakeGen2ItemAclObject](/powershell/module/az.storage/set-azdatalakegen2itemaclobject) cmdlet to add or update an ACL entry. Use the [Update-AzDataLakeGen2Item](/powershell/module/az.storage/update-azdatalakegen2item) cmdlet to commit the ACL.
213
213
214
214
This example creates or updates the ACL on a **directory** for a user.
> If you want to update a **default** ACL entry, use the **-DefaultScope** parameter when you run the [Set-AzDataLakeGen2ItemAclObject](/powershell/module/az.storage/set-azdatalakegen2itemaclobject)* command. For example: `$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -EntityID xxxxxxxx-xxxx-xxxxxxxxxxx -Permission r-x -DefaultScope`.
225
+
> If you want to update a **default** ACL entry, use the **-DefaultScope** parameter when you run the [Set-AzDataLakeGen2ItemAclObject](/powershell/module/az.storage/set-azdatalakegen2itemaclobject) command. For example: `$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -EntityID aaaaaaaa-bbbb-cccc-1111-222222222222 -Permission r-x -DefaultScope`.
Copy file name to clipboardExpand all lines: articles/storage/blobs/data-lake-storage-directory-file-acl-cli.md
+2-3Lines changed: 2 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,7 +34,7 @@ To learn about how to get, set, and update the access control lists (ACL) of dir
34
34
35
35
1. Open the [Azure Cloud Shell](../../cloud-shell/overview.md), or if you've [installed](/cli/azure/install-azure-cli) the Azure CLI locally, open a command console application such as Windows PowerShell.
36
36
37
-
2. Verify that the version of Azure CLI that have installed is `2.6.0` or higher by using the following command.
37
+
2. Verify that the version of Azure CLI that you have installed is `2.6.0` or higher by using the following command.
38
38
39
39
```azurecli
40
40
az --version
@@ -56,14 +56,13 @@ To learn about how to get, set, and update the access control lists (ACL) of dir
56
56
57
57
To learn more about different authentication methods, see [Authorize access to blob or queue data with Azure CLI](./authorize-data-operations-cli.md).
58
58
59
-
2. If your identity is associated with more than one subscription, and you are not prompted to select the subscription, then set your active subscription to subscription of the storage account that you want operate upon. In this example, replace the `<subscription-id>` placeholder value with the ID of your subscription.
59
+
2. If your identity is associated with more than one subscription, and you are not prompted to select the subscription, then set your active subscription to the subscription of the storage account that you want to operate upon. In this example, replace the `<subscription-id>` placeholder value with the ID of your subscription.
60
60
61
61
```azurecli
62
62
az account set --subscription <subscription-id>
63
63
```
64
64
65
65
Replace the `<subscription-id>` placeholder value with the ID of your subscription.
66
-
Replace the `<subscription-id>` placeholder value with the ID of your subscription.
67
66
68
67
> [!NOTE]
69
68
> The example presented in this article show Microsoft Entra authorization. To learn more about authorization methods, see [Authorize access to blob or queue data with Azure CLI](./authorize-data-operations-cli.md).
Copy file name to clipboardExpand all lines: articles/storage/blobs/data-lake-storage-directory-file-acl-powershell.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ author: normesta
6
6
7
7
ms.service: azure-data-lake-storage
8
8
ms.topic: how-to
9
-
ms.date: 11/18/2024
9
+
ms.date: 11/26/2024
10
10
ms.author: normesta
11
11
ms.reviewer: prishet
12
12
ms.devlang: powershell
@@ -57,7 +57,7 @@ To learn about how to get, set, and update the access control lists (ACL) of dir
57
57
Connect-AzAccount
58
58
```
59
59
60
-
2. If your identity is associated with more than one subscription, and you are not prompted to select the subscription, then set your active subscription to subscription of the storage account that you want operate upon. In this example, replace the `<subscription-id>` placeholder value with the ID of your subscription.
60
+
2. If your identity is associated with more than one subscription, and you are not prompted to select the subscription, then set your active subscription to the subscription of the storage account that you want to operate upon. In this example, replace the `<subscription-id>` placeholder value with the ID of your subscription.
0 commit comments