zoukankan      html  css  js  c++  java
  • Azure China (4) 管理Azure China Storage Account

      《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。位置我们设置为中国东部,即上海的数据中心。如下图:

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

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

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

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

      

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

      

      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/

      

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

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

      

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

      注意:Container Name也必须为小写

     

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

      

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

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

      

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

      如下图:

      

      方法二:使用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,如下图:

      

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

      

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

      

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

      

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

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

      

      在弹出的界面中,

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

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

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

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

      

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

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

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

      

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

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

      

      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,将本地的文件进行上传

      

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

      

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

      

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

      

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

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

      

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

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

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

      

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

      

      

      

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

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

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

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

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

     

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

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

     

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

  • 相关阅读:
    Android中的AsyncTask异步任务的简单实例
    Cubieboard学习资源
    BZOJ4518: [Sdoi2016]征途(dp+斜率优化)
    BZOJ1096: [ZJOI2007]仓库建设(dp+斜率优化)
    BZOJ1010: [HNOI2008]玩具装箱toy(dp+斜率优化)
    BZOJ4517: [Sdoi2016]排列计数(组合数+错位排列)
    BZOJ4810: [Ynoi2017]由乃的玉米田(莫队+bitset)
    bitset用法小结
    BZOJ3687: 简单题(dp+bitset)
    BZOJ4484: [Jsoi2015]最小表示(拓扑排序乱搞+bitset)
  • 原文地址:https://www.cnblogs.com/threestone/p/3732879.html
Copyright © 2011-2022 走看看