当前位置: 首页 > 知识库问答 >
问题:

如何在azure storage blob中生成许可下载链接

艾弘义
2023-03-14

我可以通过这些代码得到一个链接,它可以成功下载一个文件

BlobContainerSasPermission blobContainerSasPermission = new BlobContainerSasPermission()
                .setReadPermission(true)
                .setWritePermission(true)
                .setListPermission(true);
BlobServiceSasSignatureValues builder = new BlobServiceSasSignatureValues(OffsetDateTime.now().plusDays(1), blobContainerSasPermission)
                .setProtocol(SasProtocol.HTTPS_ONLY);
BlobClient client = new BlobClientBuilder()
                .connectionString("connection string")
                .blobName("")
                .buildClient();
String blobContainerName = "test";
return String.format("https://%s.blob.core.windows.net/%s?%s",client.getAccountName(), blobContainerName, client.generateSas(builder));

共有1个答案

谭正谊
2023-03-14

用于访问容器、目录或blob的SAS令牌可以通过使用Azure AD凭据或帐户密钥来保护。使用Azure AD凭据保护的SAS称为用户委派SAS。Microsoft建议您在可能的情况下使用Azure AD凭据作为安全最佳实践,而不是使用帐号密钥,因为帐号密钥可能更容易受到损害。当应用程序设计需要共享访问签名时,使用Azure AD凭据创建用户委派SAS以获得更高的安全性。

检查创建一个用户委派SAS和这个来了解实现细节。

 类似资料:
  • 问题内容: 我有HTML的基本概念。我想在示例网站中创建下载链接,但是我不知道如何创建它。我该如何链接才能下载文件而不是访问文件? 问题答案: 这个答案已经过时了。现在,我们有了属性。 如果“下载链接”是指要下载文件的链接,请使用 在将下载开始之前,新的浏览器窗口出现。当浏览器发现资源是文件下载时,通常会关闭该窗口。 请注意,浏览器已知的文件类型(例如JPG或GIF图像)通常会在浏览器中打开。

  • 如何使用下载链接实现AntiForgeryToken: 我试图创建一个ajax请求,但无法下载文件,控制器中的操作如下所示: 有什么想法吗?

  • 问题内容: 我在网页上提供了pdf文件的链接以供下载,如下所示 问题是,当用户单击此链接时, 如果用户已安装Adobe Acrobat,则它将在Adobe Reader的同一浏览器窗口中打开文件。 如果未安装Adobe Acrobat,则弹出窗口提示用户下载文件。 但是,无论是否安装了“ Adob​​e acrobat”,我都希望它始终弹出用户下载。 请告诉我我该怎么做? 问题答案: 而不是链接到

  • 网站为“https://www . NSE India . com/companies-listing/corporate-filings-announcements”。一个朋友给我发来了一些日期之间的下载数据的潜在链接,如"https://www.nseindia.com/api/corporate-announcements的csv文件?指数=股票

  • 我有两个完整的。我想做以下场景:如果第一个Completable到达onComplete,继续第二个Completable。最终结果将是完成第二个可完成项。 这就是我在使用单getUserIdAlreadySavedInDevice()和Compltable login()时的做法:

  • 我有文本文件包含的CSV文件格式的样本,我希望我的用户可以下载一个链接点击该文件。 此文件驻留在此文件夹结构中: 资产- 这是我一直尝试的代码: 此代码在页面加载时下载文件,而不是单击链接。此外,它还下载页面的整个html结构,我只需要我在文本文件中编写的文本。 请问问题出在哪里?