在我在Azure App Service中托管的应用程序中,我们上传了一些直接存储到Azure blob的图像。
过了一段时间后,我们可以从应用程序中查看图像,但无论如何用户都可以获取blob URL,这样他/她就可以在没有应用程序的情况下查看图像。
有没有办法像我们只能从直接网址查看应用中的图片。
我尝试将其保密,然后用户从myapplication中看不到。
是否有某种方法可以安全地存储这些图像,以便我的应用程序中的真实用户可以访问或查看?
答案 0 :(得分:-1)
不,如果用户碰巧获得blob链接,则无法限制Azure Storage API仅允许应用程序访问内容而不允许用户访问内容。我不认为在混合中添加CDN会改变这一点,因为来自CDN的内容也可以通过端点accessed。
如果您拥有包含Web门户和Web API的双层体系结构,那么您的Web API可以根据用户请求从Azure存储中获取内容,然后将内容作为http response message
流式传输到您的Web门户。用户通过这种方式只能将最终内容视为图像,而无需知道图像的来源。
但这可能会使您的应用程序因为从Web api获取内容的额外跳跃而变慢。具有blob链接的门户网站的重点是加快速度。
关于安全性,如果blob是开放的,那么任何人都可以阅读它们。如果您想限制某些用户,则必须在您的网络应用中提出逻辑,以便在限定时间内向用户发放SAS tokens
。