Azure复制Blob到其他高级存储帐户

杰里米

我正在尝试将一个Blob(特别是vhd)从存储帐户复制到另一个存储帐户。我正在编写的应用可以同时拥有两个存储帐户的所有者访问权限,并且可以在这些存储帐户上运行其他操作。vhd上没有租约(未附加VM)。我有以下代码,但收到403禁止响应。

StorageCredentials scSource = new StorageCredentials(SourceStorageName, strSourceStorageKey);
StorageCredentials scTarget = new StorageCredentials(TargetStorageName, strTargetStorageKey);
CloudStorageAccount csaSource = new CloudStorageAccount(scSource, true);
CloudStorageAccount csaTarget = new CloudStorageAccount(scTarget, true);
CloudBlobClient cbcSource = csaSource.CreateCloudBlobClient();
CloudBlobClient cbcTarget = csaTarget.CreateCloudBlobClient();
CloudBlobContainer bcSource = cbcSource.GetContainerReference(SourceContainer);
CloudBlobContainer bcTarget = cbcTarget.GetContainerReference(TargetContainer);
CloudBlob cbSource = bcSource.GetBlobReference(strSourceDiskName);
CloudBlob cbTarget = bcTarget.GetBlobReference(strTargetDiskName);
Task<string> tskCopy = cbTarget.StartCopyAsync(cbSource.Uri);
while (tskCopy.Status != TaskStatus.RanToCompletion)
{
    if (tskCopy.Exception != null)
    throw tskCopy.Exception;
    Thread.Sleep(2500);
}

不知道为什么会这样,因为我能够通过其他工具(Cloud berry等)将Blob从一个存储帐户复制到另一个存储帐户。

杰里米

感谢Gaurav Mantri向我指出正确的方向。查找共享访问签名后,我从Microsoft https://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-shared-access-signature-part-2/上获得了这篇文章。

此代码是特定的:

SharedAccessBlobPolicy sasConstraints = new SharedAccessBlobPolicy();
sasConstraints.SharedAccessStartTime = DateTime.UtcNow.AddMinutes(-5);
sasConstraints.SharedAccessExpiryTime = DateTime.UtcNow.AddHours(24);
sasConstraints.Permissions = SharedAccessBlobPermissions.Read | SharedAccessBlobPermissions.Write;

// Generate the shared access signature on the blob, setting the constraints directly on the signature.
string sasBlobToken = blob.GetSharedAccessSignature(sasConstraints);

// Return the URI string for the container, including the SAS token.
return blob.Uri + sasBlobToken;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Azure复制Blob到其他高级存储帐户

来自分类Dev

将 Blob 从 Azure 存储帐户复制到网络路径

来自分类Dev

Azure存储高级帐户是否支持阻止Blob?

来自分类Dev

在存储帐户之间复制Blob

来自分类Dev

Azure:无法将存档Blob从一个存储帐户复制到另一个存储帐户?

来自分类Dev

Nodejs Azure存储将Blob复制到新Blob

来自分类Dev

将Azure存储帐户移至其他区域

来自分类Dev

将Azure存储帐户迁移到其他订阅

来自分类Dev

使用其他帐户向Azure添加存储容器吗?

来自分类Dev

获取Azure高级存储帐户属性

来自分类Dev

获取Azure高级存储帐户属性

来自分类Dev

AWS S3使用AWS Lambda跨多个帐户复制并触发内部Lambda复制到其他存储桶

来自分类Dev

Azure Blob存储:在同一Azure存储帐户中使用访问层ARCHIVE复制Blob无法正常工作

来自分类Dev

用于将表复制到其他数据库的高级队列

来自分类Dev

Azure 使用 rest API 将 blob 从一个存储帐户复制到同一订阅中的另一个

来自分类Dev

Azure Blob存储:地理复制

来自分类Dev

从Azure管道将多平台复制文件复制到Azure Blob存储

来自分类Dev

Cloudtrail 到 Cloudwatch 到其他帐户

来自分类Dev

Azure存储帐户备份(表和Blob)

来自分类Dev

从Azure存储帐户删除VM Blob

来自分类Dev

Azure DevOps-将文件复制到Blob存储时,AzureBlob文件复制任务失败

来自分类Dev

如何获得刚刚复制到Azure存储帐户的CloudBlockBlob的大小?

来自分类Dev

如何将表存储表复制到其他表存储

来自分类Dev

使用.Net API startCopy将页面Blob从一个存储帐户复制到另一个存储帐户

来自分类Dev

AzCopy - 如何从 root$ 开始递归地将所有 blob 从一个存储帐户复制到另一个存储帐户

来自分类Dev

将Azure存储帐户(经典)转换为ARM Blob存储

来自分类Dev

从Azure Blob复制到AWS S3存储桶

来自分类Dev

是否将从远程获取的所有对象都向前推送(复制)到其他存储库?

来自分类Dev

将本地git存储库复制到其他服务器?

Related 相关文章

  1. 1

    Azure复制Blob到其他高级存储帐户

  2. 2

    将 Blob 从 Azure 存储帐户复制到网络路径

  3. 3

    Azure存储高级帐户是否支持阻止Blob?

  4. 4

    在存储帐户之间复制Blob

  5. 5

    Azure:无法将存档Blob从一个存储帐户复制到另一个存储帐户?

  6. 6

    Nodejs Azure存储将Blob复制到新Blob

  7. 7

    将Azure存储帐户移至其他区域

  8. 8

    将Azure存储帐户迁移到其他订阅

  9. 9

    使用其他帐户向Azure添加存储容器吗?

  10. 10

    获取Azure高级存储帐户属性

  11. 11

    获取Azure高级存储帐户属性

  12. 12

    AWS S3使用AWS Lambda跨多个帐户复制并触发内部Lambda复制到其他存储桶

  13. 13

    Azure Blob存储:在同一Azure存储帐户中使用访问层ARCHIVE复制Blob无法正常工作

  14. 14

    用于将表复制到其他数据库的高级队列

  15. 15

    Azure 使用 rest API 将 blob 从一个存储帐户复制到同一订阅中的另一个

  16. 16

    Azure Blob存储:地理复制

  17. 17

    从Azure管道将多平台复制文件复制到Azure Blob存储

  18. 18

    Cloudtrail 到 Cloudwatch 到其他帐户

  19. 19

    Azure存储帐户备份(表和Blob)

  20. 20

    从Azure存储帐户删除VM Blob

  21. 21

    Azure DevOps-将文件复制到Blob存储时,AzureBlob文件复制任务失败

  22. 22

    如何获得刚刚复制到Azure存储帐户的CloudBlockBlob的大小?

  23. 23

    如何将表存储表复制到其他表存储

  24. 24

    使用.Net API startCopy将页面Blob从一个存储帐户复制到另一个存储帐户

  25. 25

    AzCopy - 如何从 root$ 开始递归地将所有 blob 从一个存储帐户复制到另一个存储帐户

  26. 26

    将Azure存储帐户(经典)转换为ARM Blob存储

  27. 27

    从Azure Blob复制到AWS S3存储桶

  28. 28

    是否将从远程获取的所有对象都向前推送(复制)到其他存储库?

  29. 29

    将本地git存储库复制到其他服务器?

热门标签

归档