我的网站中有一个包含图像上传的表单。每当用户上传图像时,它都会保存在具有随机唯一 ID 的新容器下。 在另一个页面中,我想显示该图像。但是通过使用带有 src 属性的标签,对于任何对检查元素有基本了解的好奇用户来说,我会损害图像的位置及其容器名称: https://storageaccountname.blob.core.windows.net/secret-container-name/image.jpg"
如何安全地向用户显示所述图像而不向所有人开放? 我正在使用 NextJS,所以该组件可能有任何帮助吗?
最佳答案
要安全地显示 Azure Blob 存储中的图像,请尝试以下操作:
以下权限必须设置为私有(private),因为内容仅对登录用户可见。
- 转至 Azure 门户 -> 存储帐户 -> 选择容器 -> 选择容器 -> 将访问级别更改为私有(private),如下所示:
- 尝试实现Azure Active Directory来授权对 blob 数据的访问。
- 尝试使用用户委托(delegate)SAS来授予对 blob 数据的有限访问权限。
正如@silent所述,尝试将图像存储在 Blob 存储上,并通过 Front Door 将所有请求传送到 Blob 存储。
欲了解更多详情,请引用以下链接:
Security recommendations for Blob storage - Azure Storage | Microsoft Docs
Azure Storage - Use Blob from Private Container in tag - Stack Overflow
关于azure - 如何在 img 标记中安全地显示 Azure blob 存储中的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72182575/