Azure:使用存储模拟器时的帐户名称和访问密钥是啥?

Posted

技术标签:

【中文标题】Azure:使用存储模拟器时的帐户名称和访问密钥是啥?【英文标题】:Azure: What are the Account Name and Access Key when using the Storage Emulator?Azure:使用存储模拟器时的帐户名称和访问密钥是什么? 【发布时间】:2012-02-01 17:27:58 【问题描述】:

我正在关注本指南:

http://blogs.msdn.com/b/brian_swan/archive/2010/07/08/accessing-windows-azure-blob-storage-from-php.aspx

但使用模拟器,而不是使用实际的 Azure 帐户。

我应该在这行中使用什么?

$storageClient = new Microsoft_WindowsAzure_Storage_Blob('blob.core.windows.net', 
                                                         'Your_Storage_Account_Name', 
                                                         'Your_Primary_Access_Key');

【问题讨论】:

【参考方案1】:

对于模拟器,存储帐户名称为devstoreaccount1

密钥是Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==

这与语言、SDK 等无关,并且 SDK 通常具有用于开发存储的快捷方式(至少 .NET SDK 有)。例如,使用 .NET 和 C#,您无需了解模拟器帐户的详细信息:

var storageAccount = CloudStorageAccount.DevelopmentStorageAccount;
var blobClient = storageAccount.CreateCloudBlobClient();

【讨论】:

【参考方案2】:

$storageClient = new Microsoft_WindowsAzure_Storage_Blob();

来自 Windows Azure SDK for PHP http://phpazure.codeplex.com/wikipage?title=Blob%20storage&referringTitle=Documentation

【讨论】:

是的,这是正确的。如果没有为 Microsoft_WindowsAzure_Storage_Blob() 提供参数,它将假定您要使用模拟器存储,因此: $storageClient = new Microsoft_WindowsAzure_Storage_Blob();会做你想做的。另请参阅azurephp.interoperabilitybridges.com/tutorials 上的大量教程【参考方案3】:

检查 .NET 存储客户端库 Microsoft.WindowsAzure.StorageClient.dll,您实际上可以找到构成这个“众所周知的”帐户名称和密钥的内置常量:

private const string DevstoreAccountName = "devstoreaccount1"; 私有常量字符串 DevstoreAccountKey = "Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==";

“Way back when”,在 CloudStorageAccount.DevelopmentStorageAccount 之前,我们曾经在连接到开发存储时自己输入这些数据。现在,为了方便起见,Microsoft 已将该连接字符串作为常量隐藏在 .dll 中。

private const string DevstoreCredentialInString = "AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==";

【讨论】:

以上是关于Azure:使用存储模拟器时的帐户名称和访问密钥是啥?的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 Azure Fluent 获取存储帐户密钥

在哪里可以找到我的 Azure 帐户名称和帐户密钥?

Azure CLI - 如何从帐户密钥中找到可用的“端点”?

Azure 存储帐户 - 容器级访问和 ACL

如何从 C# 代码轮换 Azure 存储帐户访问密钥?

如何获取 Azure 存储帐户密钥