Azcopy无法使用sas令牌从azure文件存储中下载文件?

时间:2019-04-04 16:23:55

标签: linux azure azcopy sas-token

我正在尝试将文件下载到在Azure上运行CentOS的vm上。 linux系统已安装azcopy。我正在尝试使用生成的SAS令牌从azure文件存储中下载文件,但下载失败。我是否误解了如何使用SAS令牌?

最终,我能够使用密钥而不是SAS令牌下载文件。所以我知道网址是正确的。

我使用Linux vm的公共IP为存储帐户创建了一个sas令牌,然后将其复制并附加到文件url。我创建了一个允许所有IP地址的CORS规则。我在本地计算机(使用其公共IP)上重复了此操作,并能够获取文件。 当我在vm上运行相同的命令时,它将失败。

我尝试使用附加在URL上的sas令牌运行此文件,并将其作为单独的参数传递。

azcopy --source "https://mynamehere.file.core.windows.net/pathtofile/file" --source-sas "?sv=2018-03-28&ss=...&srt =...&sp=...&se=2019-04-04T21:53:38Z&st=2019-04-04T13:53:38Z&sip=...&spr=https&sig=..." --destination file --verbose

我不断得到

[VERBOSE] Location 'Cloud file: https://mynamehere.file.core.windows.net/pathtofile/file' does not exist, This request is not authorized to perform this operation.
HttpStatusMessage:This request is not authorized to perform this operation.

[ERROR] Error parsing source location "https://mynamehere.file.core.windows.net/pathtofile/file": Source with location type File doesn't exist.

1 个答案:

答案 0 :(得分:0)

请检查用于访问存储的sas令牌的权限(读取,写入,删除)和到期时间