《Windows Azure Platform 系列文章目录

  本文介绍的是国内由世纪互联运维的Azure China

  注意:本文介绍的是Azure China Storage Private Blob,即不可以通过匿名访问

  在笔者之前的文章中,我们介绍了Azure Share Access Signature,可以对设置为Private属性的Azure Container,设置一个临时的访问Token,在这个可以访问的时间内,对某一个Azure Blob资源进行访问。

  具体可以参考笔者之前写的文章:

  Windows Azure Storage (1) Windows Azure Storage Service存储服务

      Windows Azure Storage (2) Windows Azure Storage Service存储服务之Blob详解(上)

      Windows Azure Storage (3) Windows Azure Storage Service存储服务之Blob详解(中)

      Windows Azure Storage (4) Windows Azure Storage Service存储服务之Blob Share Access Signature

  那如果我们使用国内由世纪互联运维的Azure China,如何才能使用Azure China Share Access Signature呢?

  这里我写了一个基于ASP.NET的Sample Code,可以在这里下载:http://files.cnblogs.com/files/threestone/AzureBlobSAS.rar

 

  如何运行这个ASP.NET的Sample Code?

  1.首先我们用Visual Studio 打开项目

  2.查看存储账号信息。

  

  查看访问密钥:

    

  3.将上面的存储账号名称和访问密钥修改:

    <!--存储账号名称-->
<add key="AccountName" value="[YourAzureChinaStorageAccountName]" />
<!--存储账号密钥-->
<add key="AccountKey" value="[YourAzureChinaStorageAccountKey]" />
<!--ContainerName,必须是小写-->
<add key="ContainerName" value="private" />
<!-- SAS过期时间xx秒-->
<add key="expireseconds" value="20" />

  注意:ContainerName的值,默认可以不存在。

  我写的sample code代码里,如果ContainerName不存在,则创建该Container,并且权限为Off

    private void EnsureContaierExists()
{
var container = GetContainer(); // 检查container是否被创建,如果没有,创建container
container.CreateIfNotExists(); var permissions = container.GetPermissions();
//对Storage的访问权限是OFF
permissions.PublicAccess = BlobContainerPublicAccessType.Off; container.SetPermissions(permissions);
}

  4.然后我们可以Rebuild Solution,再按F5运行即可。

  

Azure China (10) 使用Azure China SAS Token的更多相关文章

  1. 如何生成Azure SAS Token

    在Azure PaaS服务密钥的安全性文章中,提到过客户端实际上发送的是Token,而不是密钥.那么Token是该如何生成呢? Azure相应服务的SDK其实都提供了或者内置了生成Token的方法,可 ...

  2. Azure China (5) 管理Azure China Powershell

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China Cloud Update 2015-09-01 发现一个新的命令,在 ...

  3. 使用PowerShell创建Azure Storage的SAS Token访问Azure Blob文件

    Azure的存储包含Storage Account.Container.Blob等具体的关系如下: 我们常用的blob存储,存放在Storage Account的Container里面. 目前有三种方 ...

  4. 【Azure Developer】【Python 】使用 azure.identity 和 azure.common.credentials 获取Azure AD的Access Token的两种方式

    问题描述 使用Python代码,展示如何从Azure AD 中获取目标资源的 Access Token. 如要了解如何从AAD中获取 client id,client secret,tenant id ...

  5. Azure CosmosDB (10) Azure Cosmos DB体系结构

    <Windows Azure Platform 系列文章目录> Azure Cosmos DB的体系结构分为以下几个部分: 1.Database Accounts Database Acc ...

  6. 【Azure Developer】解决Azure Key Vault管理Storage的示例代码在中国区Azure遇见的各种认证/授权问题 - C# Example Code

    问题描述 使用Azure密钥保管库(Key Vault)来托管存储账号(Storage Account)密钥的示例中,从Github中下载的示例代码在中国区Azure运行时候会遇见各种认证和授权问题, ...

  7. 【Azure 环境】基于Azure搭建企业级内部站点, 配置私有域名访问的详细教程 (含演示动画)

    前言 在Azure中,可以通过App Service快速部署,构建自定义站点(PaaS服务).默认情况下,这些站点被访问URL都是面向公网,通过公网进行解析.为了最好的安全保障,是否可以有一种功能实现 ...

  8. 【Azure 云服务】Azure Cloud Service (Extended Support) 云服务开启诊断日志插件 WAD Extension (Windows Azure Diagnostic) 无法正常工作的原因

    问题描述 在Azure中国区上面创建一个云服务(外延支持)后,根据官方文档(在云服务(外延支持)中应用 Azure 诊断扩展: https://docs.azure.cn/zh-cn/cloud-se ...

  9. Windows Azure Storage (20) 使用Azure File实现共享文件夹

    <Windows Azure Platform 系列文章目录> Update 2016-4-14.在Azure VM配置FTP和IIS,请参考: http://blogs.iis.net/ ...

随机推荐

  1. win7 64的系统安装。net4.0总是提示安装未成功

    主要原因是Windows update的临时文件损坏,建议重命名该文件夹. 1. 开始——运行——cmd——键入net stop WuAuServ回车(停止windows update服务): 2. ...

  2. js 根据名字获取cookie 的方法

    function getcookie(c_name) { if (document.cookie.length > 0) { c_start = document.cookie.indexOf( ...

  3. Hibernate和Jpa的关系

    http://blog.sina.com.cn/s/blog_5f1619e80100yoxz.html Jpa是规范,Hibernate是实现,使用Hibernate的时候一定会使用到Jpa

  4. php怎么解决超链接中的中文参数转码问题?

    如题,我需要通过前端的网页传递一个中文参数(如:电脑)给后端的PHP文件,传递方式是通过超链接 "index.php/search/keyword/电脑" ,很明显的中文在传递过程 ...

  5. Win7 64位命令行编译cuda及设置Windows显卡响应时间

    在开始菜单中找到Visual Studio 2013 >> Visual Studio Tools 选择86或64版本的VC命令提示符环境,我用的 VS2013 x86 Native To ...

  6. hdu acm-1047 Integer Inquiry(大数相加)

    Integer Inquiry Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  7. 我的Sharepoint表单使用

    采用客户端验证和后台异步验证.

  8. java变量

    java有四种变量: 成员变量:类成员,在类体内,但在任何方法或构造器之外. 局部变量:在一个代码块中声明并使用. 参数:方法或构造器的变量. 异常处理参数:和参数类似,只是异常处理的自变量而不是方法 ...

  9. c#读取webconfig

    string Conn_str = ConfigurationManager.AppSettings["connectionString"].ToString();

  10. java学习笔记六——数组

    数组类型 数组是一种常见的数据结构,可用于存放多个数据,每一个数组元素存放一个数据,通常可以通过下标进行访问其元素. Java数组要求所有数组元素具有相同的数据类型.因此,数组元素的数据类型是唯一的. ...