通过带有SAS令牌的REST API在Azure Blob存储上获取AuthorizationFailure(403)响应
在与这个问题斗争了几天之后,我决定将它发布在这里,以防有人可以通过给我一些建议来帮助我 我有一个Azure存储帐户,其中有一个Blob容器,其中包含加密的图像。已使用SAS签名(由Azure VM生成)和客户提供的密钥(x-ms-encryption头),通过PUT请求(从浏览器)将图像上载到Azure Blob存储REST API。但是,当尝试使用GET请求(使用curl)从Azure VM下载映像时,我收到以下403“AuthorizationFailure”错误: 有趣的是,当我使用curl、Postman或浏览器从我自己的本地机器,甚至从位于不同资源组和不同虚拟网络中的其他Azure VM执行完全相同的GET请求(完全相同的头)时,它会按预期工作,我可以成功下载加密的映像。这将确认SAS签名和传递的标头构造正确 我已经检查了Azure门户中VM、网络安全组、虚拟网络和存储帐户的所有配置,并将其与成功下载映像的其他VM进行了比较,所有设置都完全相同,除了:通过带有SAS令牌的REST API在Azure Blob存储上获取AuthorizationFailure(403)响应,azure,azure-virtual-machine,azure-blob-storage,azure-virtual-network,Azure,Azure Virtual Machine,Azure Blob Storage,Azure Virtual Network,在与这个问题斗争了几天之后,我决定将它发布在这里,以防有人可以通过给我一些建议来帮助我 我有一个Azure存储帐户,其中有一个Blob容器,其中包含加密的图像。已使用SAS签名(由Azure VM生成)和客户提供的密钥(x-ms-encryption头),通过PUT请求(从浏览器)将图像上载到Azure Blob存储REST API。但是,当尝试使用GET请求(使用curl)从Azure VM下载映像时,我收到以下403“AuthorizationFailure”错误: 有趣的是,当我使用cur
如果您能就问题提出任何意见或建议,我将不胜感激。我认为当您通过c发送请求时,可能会出现问题,因为代码头可能设置不正确。你能分享你的代码吗?这样我们就能更好地帮助你。。对。
<?xml version="1.0" encoding="utf-8”?>
<Error>
<Code>AuthorizationFailure</Code>
<Message>
This request is not authorized to perform this operation.
RequestId:1b203db6-c01e-0013-1553-6adb9b000000
Time:2020-08-04T11:33:42.9494992Z
</Message>
</Error>