Azure Storage (27) 使用Access Policy访问Azure Storage

  《Windows Azure Platform 系列文章目录

 

  我们在使用Azure Storage的时候,为了设置访问权限,我们会使用Azure Storage Shared Access Signature (SAS)。

  SAS有以下属性

权限 Read
Write
Delete
List
Add
Create
Update
Process
访问开始时间、访问结束时间

Start Time, Expire Time

允许的IP Allow IP
允许的协议 HTTPS or HTTP
访问秘钥 SAS Token

  一个标准的SAS Token,如下图:

  https://leizhangstorage.blob.core.chinacloudapi.cn/?sv=2019-10-10&ss=bfqt&srt=o&sp=rwdlacup&se=2020-06-29T14:58:36Z&st=2020-06-29T06:58:36Z&sip=202.96.225.228&spr=https&sig=KLn5mZ8s4YN9ae%2FNKRzzFYRSgu06mtadqy3UOTZ%2FE1E%3D

 

  SAS Token使用起来非常方便,但是也有一些缺点,比如:

  1.如果SAS Token被供应商泄漏了,怎么办?

  2.如果SAS Token过期时间只有14天,且已经在代码里面hard code了,我们想继续使用现有的SAS Token,且过期时间为1年

 

  这时候使用SAS Token的话,就需要重新生成一个新的SAS Token,并且需要做很多修改。这时候就可以考虑使用Access Policy。

 

  什么是Access Policy?

  Access Policy可以理解为在服务器端管理SAS Token,因为Access Policy保存在服务器端,所以我们可以修改Access Policy,继续使用现有的SAS Token。

 

  如何使用Access Policy,我们以Azure Storage Explorer为例:

  1.首先,我们创建1个新的存储账户,创建1个Container,Public Access Level为Private。如下图:

  

  2.往这个存储账户上传1个文件,步骤略。

  3.然后我们使用Azure Storage Explorer,链接这个存储账户。步骤略

  4.选择之前创建的container,右键Manage Access Policies。如下图:

  

  5.在弹出的窗口中,创建新的Policy。

  访问开始时间为2020年6月29日,下午5点44分。

  访问结束时间为2020年6月29日,下午5点54分。

  访问权限为Read和List

  

  6.选择一个blob,右键,Get Shared Access Signature

  

  7.在弹出的窗口中,选择之前创建的policy1。如下图:

  

  8.点击上图的Create,会显示SAS Token的URL。如下图:

  

  9.我们打开新的浏览器,就可以通过SAS Token访问该资源。如下图:

  

 

  10.如果我们在时间过期之后,即(为2020年6月29日,下午5点54分)之后访问,会显示访问错误。如下图:

  

  

  11.如果我们不采用Access Policy,则需要重新申请新的SAS Token URL。

  而采用Access Policy,我们只需要修改Policy的策略,策略更新后,采用老的SAS Token URL可以继续访问该资源。

  我们点击选图的Manage Access Policies:

  

 

  12.在弹出的窗口中,将过期时间修改的更长一点:

  

 

  13.修改完毕后,我们再复用步骤8中的SAS URL,可以继续访问原有资源。

  

 

相关文章

Microsoft云包括了Azure、PowerPlatform、Microsoft365、Git...
《WindowsAzurePlatform系列文章目录》 我们在使用AzureAPI...
微软免费使用一年的Azure虚拟机,默认提供了一个64G的磁盘,...
上篇请访问这里做一个能对标阿里云的前端APM工具(上)样本多...
一年一度的MicrosoftBuild终于来了,带来了非常非常多的新技...