存储在Azure Blob存储下的文件

存储在Azure Blob存储下的文件,azure,azure-web-app-service,azure-storage,azure-storage-blobs,Azure,Azure Web App Service,Azure Storage,Azure Storage Blobs,在Azure应用程序服务中托管的我的应用程序中,我们上载了一些直接存储到Azure blob的图像 过了一段时间,我们可以从应用程序中查看图像,但无论如何,用户会获取blobURL,这样他/她就可以在不使用应用程序的情况下简单地检查图像 有没有什么方法可以让我们只从我的应用程序而不是从直接URL查看图像 我试图保持它的私密性,但用户在我的应用程序中看不到它 是否有某种方法可以安全地存储这些图像,以便来自我的应用程序的真实用户可以访问或查看?否,没有任何方法可以限制Azure存储API仅允许您的应

在Azure应用程序服务中托管的我的应用程序中,我们上载了一些直接存储到Azure blob的图像

过了一段时间,我们可以从应用程序中查看图像,但无论如何,用户会获取blobURL,这样他/她就可以在不使用应用程序的情况下简单地检查图像

有没有什么方法可以让我们只从我的应用程序而不是从直接URL查看图像

我试图保持它的私密性,但用户在我的应用程序中看不到它


是否有某种方法可以安全地存储这些图像,以便来自我的应用程序的真实用户可以访问或查看?

否,没有任何方法可以限制Azure存储API仅允许您的应用程序访问内容,而不允许用户访问blob链接。我认为将CDN添加到混合中也不会改变这一点,因为来自CDN的内容也可以通过端点传输

如果您有一个具有Web门户和Web api的两层体系结构,那么您的Web api可以根据用户请求从Azure存储获取内容,然后将内容作为http响应消息流式传输到您的Web门户。通过这种方式,用户只能将最终内容视为图像,而不知道图像来自何处

但这会使您的应用程序速度变慢,因为从web api获取内容需要额外的跳跃。web门户拥有blob链接的全部目的是使其更快


关于安全性,如果blob是开放的,那么任何人都可以读取它们。如果你想限制某些用户,那么你必须在你的web应用程序中找到逻辑,在有限的时间内向用户发布SAS令牌

Blob已经安全地存储了您的内容。您是否考虑过使用共享访问签名来提供直接访问?如果它是一个私有blob,那么这几乎是在没有存储帐户凭据的情况下直接访问或通过web应用流式传输内容的唯一方法?仅供参考,我回答了一个几乎相同的问题,。标记为dupe,通常是一个要求代码与Azure blob一起工作的问题