我正在开发一个Web应用程序,用户可以上传他们的文件,每个用户都可以设置上传文件的权限,以便访问其他用户。
我想使用Azure文件存储的Azure Blob存储来保存上传的文件。
我需要在保存之前检查并验证上传的文件,但用户应在Web服务器上上传文件,然后Web服务器将验证文件并使用Access Key将其保存到Azure存储。
要使用SAS - Shared Access Signatures, Part 1: Understanding the SAS model中的解释方法访问文件,我想在Web服务器上创建帐户SAS并生成URL,然后用户可以直接从Azure存储下载其可访问文件。
以下是SAS网址示例:
https://myaccount.blob.core.windows.net/sascontainer/sasblob.txt?sv=2015-04-05&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https&sig=Z%2FRHIX5Xcg0Mq2rqI3OlWTjEg2tYkboXr1P9ZUXDtkk%3D
但是,如果用户直接与匿名用户共享URL,他们可以在到期日之前访问该文件,或者他们可以使用URL访问其他文件(或不是?)。
答案 0 :(得分:3)
答案 1 :(得分:1)
我们可以使用SAS设置文件权限,使用SAS策略设置启动数据和过期日期。但是,如果您有关于该文件的非常复杂的逻辑。我建议您使用角色权限来执行此操作。