问题标签 [azure-sas]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1532 浏览

azure - 如何通过 sasTokenUri 连接 Azure Blob 存储?

我需要列出 Azure Blob 存储上所有最近创建的文件名。由于我的团队不是 Azure 帐户的所有者,但我们提供了客户端 ID客户端密码以进行连接。通过Client IdClient Secret我能够生成sasTokenUri,我有以下问题,任何输入都会有所帮助

问题 1:如何通过sasTokenUri连接 Azure Blob Storage并列出最近创建的所有文件?问题 2:如何通过上面建立的连接识别 Azure Blob 存储上新创建的文件?

限制:由于某些基础设施限制,我无法通过(Python、Java 和其他)以编程方式访问 Blob 存储,我只需要通过sasTokenUri或 RestAPI 访问文件列表。

sasTokenUri 示例:“https://{Account}.blob.core.windows.net/blob.name?sv=2020-02-10&spr=https&se=2021-07-04T11%3A22%3A05Z&sr=c&sp=rwdl&sig=kL9a1aaaaaaaaaa% 2Bbbbbbbb4%2Bccccccc5%2B4vddddddddd0%3D"

任何输入或指针都会有所帮助。提前致谢!!

0 投票
1 回答
61 浏览

python-3.x - 如何为存储在 Blob 容器中的 excel 文件生成 Blob SAS URL

我正在尝试为 excel 文件生成 Blob SAS URL,以读取其数据帧中的数据。我正在使用下面的 python 代码,它在将 URL 值传递给 read_excel 函数时抛出错误“HTTPError:服务器无法验证请求。确保 Authorization 标头的值正确形成,包括签名。”

代码 :

错误 失败 C:\WPy64-3800\python-3.8.0.amd64\lib\site-packages\azure\storage\blob\baseblobservice.py:1009: SyntaxWarning: "is not" with a literal。你的意思是“!=”?如果 lease_duration 不是 -1 并且 \C:\WPy64-3800\python-3.8.0.amd64\lib\site-packages\azure\storage\blob\baseblobservice.py:2660: SyntaxWarning: "is not" with a literal . 你的意思是“!=”?如果lease_duration 不是-1 并且 \C:\WPy64-3800\python-3.8.0.amd64\lib\site-packages\azure\storage\common_connection.py:82: SyntaxWarning: "is" with a literal。你的意思是“==”吗?self.protocol = self.protocol if parsed_url.scheme is '' else parsed_url.schemeTraceback (最近一次调用最后):文件“C:\Temp\rid04ztb.tl0\005b3440-f226-432b-b554-d625411fdb58”,第 26 行,在 df=pd.read_excel(url, sheet_name='test',在里面 在 http_error_default 中引发 HTTPError(req.full_url, code, msg, hdrs, fp)urllib.error.HTTPError: HTTP Error 403: Server failed to authenticate the request。确保 Authorization 标头的值正确形成,包括签名。在 http_error_default 中引发 HTTPError(req.full_url, code, msg, hdrs, fp)urllib.error.HTTPError: HTTP Error 403: Server failed to authenticate the request。确保 Authorization 标头的值正确形成,包括签名。

任何帮助表示赞赏。提前致谢。

0 投票
1 回答
28 浏览

python - 无法将任务添加到 Azure 批处理模型

我正在尝试使用将output_files 作为任务参数的任务创建 Azure 批处理作业

在调试此代码时,我收到异常, 但在删除output_files参数时,一切正常,并且作业是使用任务创建的。在此处输入图像描述

0 投票
0 回答
14 浏览

azure-sas - 用于多级目录的 Azure SAS 令牌

有没有办法为目录和子目录创建 SAS 令牌?

we have used an option called grant permission to directory and subdirectory on a selected directory but it could generate the SaS token for parent level not child level.

0 投票
1 回答
226 浏览

azure - 为 Azure Blob 生成预签名 URL 引发空指针异常

我想生成一个预签名 URL /SAS,以便拥有该 URL 的任何人都可以访问我的文件。

SDK版本:12.8.0

我写了以下代码:

但代码抛出错误

java.lang.NullPointerException:参数不能为 null 或空字符串。参数名称:storageSharedKeyCredentials。

编辑1:尝试过:

但现在得到:

“状态码 403,”AuthenticationFailed服务器无法验证请求。确保 Authorization 标头的值格式正确,包括签名。\nRequestId:7b0f0d75-d01e-00a8-4d84-7c9aa3000000\nTime:2021-07-19T09:54:31.1312999Z此资源级别不允许指定的已签名资源"",

0 投票
1 回答
206 浏览

azure - Azure 存储帐户生成 SAS 令牌,而不是 SAS URI

我正在使用该Azure.Storage.Blob库生成一个 SasToken,但我得到的是一个 Sas Uri。我在网上和文档中查找了示例。

我试图自己生成一个令牌,但我没有成功。我什至尝试创建一个 SharedKeyLite 但这也不起作用。

我的 SharedKeyLite 代码:

我的请求:

错误:

服务器未能验证请求。确保 Authorization 标头的值正确形成,包括签名。

为什么不Azure.Storage.Blob生成 SAS 令牌?

0 投票
0 回答
90 浏览

python - Azure 从 Python 获取用户委派密钥失败

我一直在尝试使用 Python 获取用户委托密钥来签署容器 SAS,但它一直失败。我确定我在身份上做错了什么,但是从所有文档和示例中我无法弄清楚是什么。

这是我的代码:

这是输出:

所有帮助将不胜感激!

0 投票
1 回答
239 浏览

powershell - 仅使用 SAS 令牌在 PowerShell 中上传

我有一个SAS 令牌,格式如下:

https://name.blob.core.windows.net/container?sv=2015-04-05&sr=b&sig=abc123&se=2017-03-07T12%3A58%3A52Z&sp=rw

我正在尝试Az在 Powershell 中使用提供的 Cmdlet 将内容上传到此 blob。我找不到只需要上述 SAS 令牌和要上传的文件的 API。

阅读这篇reddit 帖子,我的选择似乎是:

  1. 解析出StorageAccountName(in the example name)、Container(in the example container) 和SASToken(in the example above sv=2015-04-05&sr=b&sig=abc123&se=2017-03-07T12%3A58%3A52Z&sp=rw),然后使用New-AzStorageContext/ Set-AzStorageBlobContent。这或多或少是此 StackOverflow 帖子中的答案(仅使用 SAS 令牌连接到 Azure 存储帐户?
  2. 使用Invoke-WebRequest或其亲属基本上自己执行 REST 调用。

我想尽可能多地使用Az提供的 cmdlet,所以从选项 1 开始,似乎没有一个 API 来解析这个,我能找到的最接近的是这个 StackOverflow 帖子(使用 SAS 令牌上传 Blob 内容)谈论使用CloudBlockBlob,但目前尚不清楚我是否可以在 PowerShell 中使用此类。

为此,我创建了一个看起来有效但很可能很脆弱的正则表达式,有没有更好的方法来做到这一点?

重述问题

  1. 是否有使用AzSAS URI 和 SAS 令牌来允许上传的 Cmdlet?
  2. (如果没有)是否有解析 SAS URI + SAS 令牌的 API?
0 投票
1 回答
123 浏览

typescript - Blob 存储临时 URL

我正在尝试为天蓝色存储 blob 创建临时 url。我在以下这些命令的帮助下创建了 url。

从第 2 行代码开始,sas url 已经形成了永久 uri。因此,即使我与某人共享具有一些到期时间的临时 url,他们也可以看到/获取 blob 的永久 uri,并且也可以在到期时间后使用它。那么临时链接有什么用呢?有什么方法/方法可以在临时链接中隐藏我的永久 uri 吗?

如果我错了,请指导我。

FY:我正在使用打字稿。

0 投票
1 回答
266 浏览

azure - Blob 存储帐户的 Azure SAS 令牌不起作用

更新:我已经更新了函数以提供广泛的时间范围以避免过期。我还包括我更新以启用公共访问的帐户设置的屏幕截图。还包括当前的控制台结果。图像无法打开的页面上的相同结果。

在此处输入图像描述

在此处输入图像描述

我正在尝试通过 node.js 函数从我的 Azure 存储 blob 容器中获取有效的 SAS URI。我正在使用@azure/storage-blob 库。我收到了 Azure 的回复,但浏览器说它未经授权。我已经四次检查我的帐户和密钥是否正确。这些设置正在将媒体上传到容器。

我不确定如何进行故障排除,因为没有任何错误消息返回到节点 api。相同的代码返回一个在另一个(开发)容器中工作的 URI。但是,该容器现在允许公共访问。因此,无论如何,您都可以从该 blob 访问 blob 是有道理的。请问有什么关于如何解决这个问题的建议吗?

访问控制台中生成的 blob 的错误:

5x6gyfbc5eo31fdf38f7fdc51ea1632857020560.png:1 获取 https://**********.blob.core.windows.net/prod/5x6gyfbc5eo31fdf38f7fdc51ea1632857020560.png?sv%3D2020-06-12%26st%3D2021-98T91 %253A23%253A41Z%26se%3D2021-09-28T19%253A25%253A07Z%26sr%3Db%26sp%3Dracwd%26sig%3Du6Naiikn%252B825koPikqRGmiOoKMJZ5L3mfcR%252FTCT3Uyk%253D 上不允许访问此帐户。

生成 URI 的代码:

}