Skip to content

Commit e1a0163

Browse files
Permissions docs (#47793)
* readmes * docstring * remove autoadded import
1 parent 0d0752b commit e1a0163

File tree

4 files changed

+30
-0
lines changed

4 files changed

+30
-0
lines changed

sdk/storage/Azure.Storage.DataMovement.Blobs/README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,17 @@ az storage account create --name MyStorageAccount --resource-group MyResourceGro
4545
### Authenticate the client
4646
The Azure.Storage.DataMovement.Blobs library uses clients from the Azure.Storage.Blobs package to communicate with the Azure Blob Storage service. For more information see the Azure.Storage.Blobs [authentication documentation](https://github.com/Azure/azure-sdk-for-net/tree/main/sdk/storage/Azure.Storage.Blobs#authenticate-the-client).
4747

48+
### Permissions
49+
50+
The authenticated blob storage resource needs the following permissions to perform a transfer:
51+
52+
1. Read
53+
2. List (for container transfers)
54+
3. Write
55+
4. Add (specific to append blobs)
56+
5. Delete (for cleanup of a failed transfer item)
57+
6. Create
58+
4859
## Key concepts
4960

5061
The Azure Storage Common client library contains shared infrastructure like

sdk/storage/Azure.Storage.DataMovement.Files.Shares/README.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,16 @@ az storage account create --name MyStorageAccount --resource-group MyResourceGro
4747
### Authenticate the client
4848
The Azure.Storage.DataMovement.Files.Shares library uses clients from the Azure.Storage.Files.Shares package to communicate with the Azure File Storage service. For more information see the Azure.Storage.Files.Shares [authentication documentation](https://github.com/Azure/azure-sdk-for-net/tree/main/sdk/storage/Azure.Storage.Files.Shares#authenticate-the-client).
4949

50+
### Permissions
51+
52+
The authenticated share storage resource needs the following permissions to perform a transfer:
53+
54+
1. Read
55+
2. List (for directory transfers)
56+
3. Write
57+
5. Delete (for cleanup of a failed transfer item)
58+
6. Create
59+
5060
## Key concepts
5161

5262
The Azure Storage Common client library contains shared infrastructure like

sdk/storage/Azure.Storage.DataMovement/README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,14 @@ az storage account create --name MyStorageAccount --resource-group MyResourceGro
4444

4545
Authentication is specific to the targeted storage service. Please see documentation for the individual services
4646

47+
### Permissions
48+
49+
Data Movement must have appropriate permissions to the storage resources.
50+
Permissions are specific to the type of storage Data Movement is connected to.
51+
52+
- [Blob storage permissions](https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/storage/Azure.Storage.DataMovement.Blobs/README.md#permissions)
53+
- [File share permissions](https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/storage/Azure.Storage.DataMovement.Files.Shares//README.md#permissions)
54+
4755
## Key concepts
4856

4957
The Azure Storage DataMovement client library contains shared infrastructure like

sdk/storage/Azure.Storage.DataMovement/src/TransferManager.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -353,6 +353,7 @@ internal virtual Task<bool> TryRemoveTransferAsync(string id)
353353
#region Start Transfer
354354
/// <summary>
355355
/// Starts a transfer from the given source resource to the given destination resource.
356+
/// Ensure <see cref="StorageResource"/> instances are built with <see href="https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/storage/Azure.Storage.DataMovement/README.md#permissions">appropriate permissions</see>.
356357
/// </summary>
357358
/// <param name="sourceResource">A <see cref="StorageResource"/> representing the source.</param>
358359
/// <param name="destinationResource">A <see cref="StorageResource"/> representing the destination.</param>

0 commit comments

Comments
 (0)