using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure.Storage.Table;
using Microsoft.WindowsAzure.Storage.Table.Queryable;
using Microsoft.WindowsAzure.Management;
public static void Main()
GetKeys("DevicePilot", new[]{"Device","DeviceSensor","DeviceFault","DeviceUser"});
public static void GetKeys(string customer, string[] tables)
var account = CloudStorageAccount.Parse("DefaultEndpointsProtocol=https;AccountName=sneprosa;AccountKey=dRI6uLfj6OiLyJgdH37cCVhRQgfV4ViqQvJqxmaEJTyWjsgA6dk4U2AXjzLduvTdNK1cEvoTpL1YMIfWy65rzg==");
var client = account.CreateCloudTableClient();
foreach(var table in tables)
var key = RequestSasToken(customer, client.GetTableReference(table));
Console.WriteLine("Table: " + table + ", Key: " + key);
public static string RequestSasToken(string customerId, CloudTable table)
var policy = new SharedAccessTablePolicy()
SharedAccessExpiryTime = DateTime.UtcNow.AddMonths(1),
Permissions = SharedAccessTablePermissions.Query
var sasToken = table.GetSharedAccessSignature(