首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将SAS令牌字符串作为文字传递给Azure CLI?

如何将SAS令牌字符串作为文字传递给Azure CLI?
EN

Stack Overflow用户
提问于 2020-05-01 13:24:09
回答 2查看 767关注 0票数 0

以下内容适用于典型的windows命令提示符,但在使用PowerShell命令提示符时不起作用:

代码语言:javascript
复制
az storage blob show 
    --container-name <container name> 
    --name training.txt 
    --account-name <account> 
    --sas-token "spr=https&sv=2018-11-09&si=readpolicy&sr=b&sig=<the signature>"

根据规则的说法,单引号字符串应该是文字的。然而,以下内容仍然失败:

代码语言:javascript
复制
The specified resource does not exist. ErrorCode: ResourceNotFound

Der Befehl "sv" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Der Befehl "si" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Der Befehl "sr" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Der Befehl "sig" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.

关于“找不到指定的资源”的错误是无效的,因为我尝试了使用经典命令提示符的相同命令。

代码语言:javascript
复制
az storage blob show 
    --container-name <container name> 
    --name training.txt 
    --account-name <account> 
    --sas-token 'spr=https&sv=2018-11-09&si=readpolicy&sr=b&sig=<the signature>'

那么,如何将这个SAS-Token-字符串作为文字传递给Azure CLI

这一切发生在我和PowerShell Core 6.2.3 64-bit..。在更新到PowerShell Core 7.0.0后同样适用

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-01 13:30:08

如果我将SAS令牌附在单引号中,则可以复制此错误:

代码语言:javascript
复制
az storage blob show 
    --container-name <container name> 
    --name training.txt 
    --account-name <account> 
    --sas-token 'spr=https&sv=2018-11-09&si=readpolicy&sr=b&sig=<the signature>'

但是,如果我将SAS令牌括在双引号中,则可以获取blob的属性。

代码语言:javascript
复制
az storage blob show 
    --container-name <container name> 
    --name training.txt 
    --account-name <account> 
    --sas-token "spr=https&sv=2018-11-09&si=readpolicy&sr=b&sig=<the signature>"

更新

我也能够在PowerShell控制台中用双引号再现这个问题。但是,如果我在命令中包括了--% (我认为这是stop parsing token的),我就能够让它工作起来。

你能试试这样的东西吗?

代码语言:javascript
复制
az storage blob show --% --container-name <container name> --name training.txt --account-name <account> --sas-token "spr=https&sv=2018-11-09&si=readpolicy&sr=b&sig=<the signature>"
票数 3
EN

Stack Overflow用户

发布于 2020-05-01 13:29:52

将SAS令牌添加到变量并使用它,

前任:

代码语言:javascript
复制
$saskey=az storage container generate-sas -n $Tempcontainer --account-name $storageAccountName --https-only --permissions dlrw --expiry $end 

然后使用作为

代码语言:javascript
复制
az storage blob show 
    --container-name <container name> 
    --name training.txt 
    --account-name <account> 
    --sas-token $saskey
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61543336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档