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

How to connect Azure Blob storage through sasTokenUri?

我需要列出 Azure Blob 存储上所有最近创建的文件名。 由于我的团队不是 Azure 帐户的所有者,但我们提供了 Client IdClient Secret 进行连接。 通过 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%2Bcccccc5%2B4vdddddddddd0%3D

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

还有其他方法,但是你看过Azure Storage Explorer

可以通过连接对话框通过 SaS 令牌进行连接,然后通过类似于文件资源管理器的 blob 存储帐户进行导航。

根据您的 SAS 令牌 URI,您似乎正在获取 blob 容器的 SAS 令牌。

要列出该 blob 容器中的 blob,只需将 &restype=container&comp=list 附加到您的 SAS URI 并在 Postman 中使用它。因此,您的 SAS 令牌 URI 将类似于:

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&restype=container&comp=list

这将为您提供 XML 格式的 blob 容器中的 blob 列表(最多 5000 个 blob)。要查看更多选项,请在此处查看 List Blobs REST API 操作:https://docs.microsoft.com/en-us/rest/api/storageservices/list-blobs.

关于你关于识别新创建的 blob 的问题,Azure 存储没有提供任何现成的东西。但是,每个 blob 都是 Created Date/Time 属性 ,它会告诉您 blob 的创建时间。您可以使用此信息找出新创建的 blob。