Azure China (4) 管理Azure China Storage Account

时间:2024-01-19 13:06:56

  《Windows Azure Platform 系列文章目录

  

  Update 2015-05-10

  强烈建议使用AzCopy工具,AzCopy命令行工具,是经过优化的、高性能Azure Storage管理工具。

  具体请参考Windows Azure Storage (21) 使用AzCopy工具,加快Azure Storage传输速度

  

  看过我之前几章内容的读者都知道,Azure China和Azure Global服务类型的Endpoint是不同的,比如我们创建一个Azure Storage,命名为leizhangstorage。则这个Azure Storage的Endpoint为

  -  Blob:http://leizhangstorage.blob.core.chinacloudapi.cn/

  -  Table:http://leizhangstorage.table.core.chinacloudapi.cn/

  -  Queue:http://leizhangstorage.queue.core.chinacloudapi.cn/

可以看到,Azure China Storage Endpoint为core.chinacloudapi.cn,与Global的不同。

  本章我将会给大家介绍,如何管理Azure China Storage Account。一般性有三种管理方式:

  1.使用Visual Studio Ultimate 2013的Server Explorer

  2.使用Visual Studio Ultimate 2013进行开发

  3.使用AzureStorageExplorer For CHN

  在开始介绍之前,我们先登陆Azure China管理界面,创建leizhangstorage。位置我们设置为中国东部,即上海的数据中心。如下图:

Azure China (4) 管理Azure China Storage Account

  注意:存储账号必须为英文小写

  方法一:介绍使用Visual Studio Ultimate 2013的Server Explorer。

  1.我们先以管理员身份,运行VS2013。

  2.打开菜单栏,View->Server Explorer

  Azure China (4) 管理Azure China Storage Account

  3.展开Windows Azure->Storage->Attach External Storage

  Azure China (4) 管理Azure China Storage Account

  4.在弹出的界面中,输入Account name, Account key,并且需要设置endpoint

  -  Blob:http://leizhangstorage.blob.core.chinacloudapi.cn/

  -  Table:http://leizhangstorage.table.core.chinacloudapi.cn/

  -  Queue:http://leizhangstorage.queue.core.chinacloudapi.cn/

  Azure China (4) 管理Azure China Storage Account

  5.设置完毕后,我们就能看到创建成功的leizhangstorage这个存储账号了

  我们依次展开leizhangstorage->Blobs,点击右键,选择Create Blob Container

  Azure China (4) 管理Azure China Storage Account

  在弹出的界面中,设置Container name为photos

  注意:Container Name也必须为小写

 

 (注意:我们鼠标左键选中之前创建的Container 即photos,可以在属性中设置这个container的属性,如下图。注意我们设置为Blob)

  Azure China (4) 管理Azure China Storage Account

  6.在Server Explorer中,双击我们之前创建成功的photos,在右侧列表中,点击Upload Blob按钮,上传一张照片

Azure China (4) 管理Azure China Storage Account

  7.上传成功后,就可以看到执行结果。

  Azure China (4) 管理Azure China Storage Account

  上图列表中的URL,就是我们可以通过IE直接访问的了。(注意,因为笔者在步骤5中设置了读取权限为Blob,所以可以直接通过IE访问上传的照片)

  如下图:

  Azure China (4) 管理Azure China Storage Account

  方法二:使用VS 2013进行开发

  Azure China Storage Account连接字符串和Azure Global的不同,我们只需要修改相应的连接字符串,就可以直接连接Azure China Storage Account。

  以我之前创建的存储账号leizhangstorage为例,只需修改以下红色部分的内容

  -  <YourStorageAccountName>,设置Account Name

  -  <YourStorageAccountKey>,设置Account Key

BlobEndpoint=http://<YourStoragAccountName>.blob.core.chinacloudapi.cn/;QueueEndpoint=http://<YourStoragAccountName>.queue.core.chinacloudapi.cn/;TableEndpoint=http://<YourStoragAccountName>.table.core.chinacloudapi.cn/;AccountName=<YourStoragAccountName>;AccountKey=<YourStoragAccountKey>

  就可以直接连接Azure China Storage Account

  

  

  方法三:使用AzureStorageExplorer_For_CN

  注意:Azure Storage Explorer默认情况下,是把该Container下的所有Blob都列出来,且不分页显示

  如果Blob内容很多,就会出现卡死的情况

  这个是我的同事根据CodePlex上开源的Azure Storage Explorer(https://azurestorageexplorer.codeplex.com/),修改出来专门针对Azure China的管理工具。

  大家可以在这里下载使用。

  最新的Azure Storage Explorer已经同时支持Azure Global 和Azure China的Storage Account了。

  下载地址在:http://azurestorageexplorer.codeplex.com/

  这里我简单介绍下,如何使用Azure Storage Explorer,将本地的文件存储到Azure Storage云端。

  1.登陆到Azure管理界面

  Azure Global使用https://manage.windowsazure.com/

  Azure China使用https://manage.windowsazure.cn/

  创建新的Azure Storage Account,如下图:

  Azure China (4) 管理Azure China Storage Account

  2.创建完毕后,点击创建成功的存储账号,如下图:

  Azure China (4) 管理Azure China Storage Account

  3.页面跳转,点击下图中的"管理访问密钥"

  Azure China (4) 管理Azure China Storage Account

  4.在弹出的窗口中,点击账户名称和主访问密钥的按钮,将存储账户名称和主访问密钥复制到记事本上

  Azure China (4) 管理Azure China Storage Account

  5.安装Azure Storage Explorer,并以管理员身份运行  

  在主界面上点击"Add Account",如下图:

  Azure China (4) 管理Azure China Storage Account

  在弹出的界面中,

  Storage Account Name复制我们在步骤4中的内容

  Storage Account Key复制我们在步骤4中的内容

  注意:如果使用的Azure Global的存储账号,请选择Microsoft Azure Default

  如果使用的是由世纪互联运维的Azure China,请选择Microsoft Azure China。如下图:

  Azure China (4) 管理Azure China Storage Account

  设置完毕后,按Save,进行保存。

  6.回到Azure Storage Explorer主界面,我们在下拉框选择之前设置成功的leidemo

  选择Blob Containers,然后选择"New"按钮,如下图:

  Azure China (4) 管理Azure China Storage Account

  7.在弹出的界面中,我们设置container name为public,

  (注意Container Name只能使用小写字母)

  Azure China (4) 管理Azure China Storage Account

  Access Level分为三种类型:

  -  Off:不允许匿名用户读取该容器中的Blob;

  -  Public Container:匿名用户可以读取该Container,并且可以列出Container所有Blob内容;

  -  Public Blob:匿名用户只能读取Blob,即只能根据Blob的URL来读取Blob,无法列出Container下所有的Blob。

  笔者需要实验匿名访问的功能,我们选择Public  Blob。

  (注意,如果是私密性很强的文件,需要将Access Level设置为Off)

  8.创建完Blob后,我们可以点击创建成功的container public,然后点击下图的Upload,将本地的文件进行上传

  Azure China (4) 管理Azure China Storage Account

  笔者将本地的截图进行上传,并且可以在工具中查看到上传成功。

  Azure China (4) 管理Azure China Storage Account

  点击上图中的View按钮,可以查看到该png图片的属性,如下图:

  Azure China (4) 管理Azure China Storage Account

  我们打开IE浏览器,在地址栏中输入上图的uri中的值,可以以匿名身份查看到Azure Storage中的png图片。如下图:

  Azure China (4) 管理Azure China Storage Account

  ======================================我是分隔符========================================

  如果读者熟悉Shared Access Signature(SAS)的话,我们可以通过Azure Storage Explorer快速生成SAS签名。

  Azure China (4) 管理Azure China Storage Account

  我们选择Blob Container的名称,然后点击上图中Security

  在弹出的窗口中,将Access Level设置为OFF,不允许匿名访问(图略)

  然后在下图的Shard Access Signature中,设置SAS的相关属性

  Azure China (4) 管理Azure China Storage Account

  最后点击Test in Browser,测试使用SAS访问Private Container的内容。

  Azure China (4) 管理Azure China Storage Account

  

  

私有表示,这个Container(文件夹)里面的内容,都不允许匿名访问

比如 http://mcdmuffinh5mkt.blob.core.chinacloudapi.cn/privatephotos/1.jpg

上面的container name是privatephotos,类型是私有(private)

所以不允许匿名文档,这也是为什么你之前上传的资源无法通过IE匿名访问

对于某些私密的信息,比如内部的图片、文件,可以设置private类型

公共blob,表示允许访问这个某一个资源,但是无法递归访问这个container (文件夹)

对于可以匿名访问资源,比如公共图片、招聘,可以设置公共blob

公共容器(container),表示可以递归访问这个container(文件夹)下的所有资源