403 服务器无法验证请求。请确保 Authorization 标头的值格式正确,包括签名

403 服务器无法验证请求。请确保 Authorization 标头的值格式正确,包括签名

有人告诉我我可以从 Azure 提供静态内容(.pdf 和 .docx 文档)。首先,我尝试从此“Blob SAS URL”链接获取我的 PDF 列表:

GET https://testtestsitweu.blob.core.windows.net/publicfiles?sp=rl&st=2024-02-15T14:18:59Z&se=2025-02-15T22:18:59Z&spr=https&sv=2022-11-02&sr=c&sig=TxAaaaaaaaaaaaaaaaaaaaaagU%3D

但即使它具有“列表”和“读取”权限,它仍然出现以下错误:

<?xml version="1.0" encoding="utf-8"?>
<Error>
    <Code>AuthenticationFailed</Code>
    <Message>Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.
RequestId:b5d14821-701e-0083-2939-6363a8000000
Time:2024-02-19T13:42:06.9875994Z</Message>
    <AuthenticationErrorDetail>Signature did not match. String to sign used was rl
2024-02-15T14:18:59Z
2025-02-15T22:18:59Z
/blob/testtest/$root


https
2022-11-02
c






</AuthenticationErrorDetail>
</Error>

我在这里做错了什么?为什么它要求授权标头?那是什么?如果我想在公共网络上提供静态内容,为什么我需要授权标头?我使用了错误的工具?

答案1

我不确定 pdf 是否支持静态内容

您可以直接从名为 $web 的存储容器提供静态内容(HTML、CSS、JavaScript 和图像文件)

https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blob-static-website

相关内容