Index: /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/AzureProvider.cs
===================================================================
--- /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/AzureProvider.cs	(revision 7544)
+++ /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/AzureProvider.cs	(revision 7545)
@@ -53,4 +53,14 @@
     }
 
+    public StorageServiceKeys GetStorageKeys(Subscription subscription, string serviceName) {
+      if (subscription == null) {
+        throw new ArgumentNullException("Subscription must not be null.", "subscription");
+      }
+      if (serviceName.Length == 0) {
+        throw new ArgumentException("Servicename is not valid.", "serviceName");
+      }
+      return ServiceManagementOperation.GetStorageKeys(subscription.SubscriptionID, subscription.CertificateThumbprint, serviceName);
+    }
+
     public List<string> ListLocations(Subscription subscription) {
       if (subscription == null) {
@@ -81,4 +91,11 @@
       }
       return ServiceManagementOperation.ListAffinityGroups(subscription.SubscriptionID, subscription.CertificateThumbprint);
+    }
+
+    public List<StorageService> ListStorageServices(Subscription subscription) {
+      if (subscription == null) {
+        throw new ArgumentNullException("Subscription must not be null.", "subscription");
+      }
+      return ServiceManagementOperation.ListStorageServices(subscription.SubscriptionID, subscription.CertificateThumbprint);
     }
 
Index: /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/Constants.cs
===================================================================
--- /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/Constants.cs	(revision 7544)
+++ /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/Constants.cs	(revision 7545)
@@ -65,4 +65,7 @@
     public const string URIHostedServiceFormat = "https://management.core.windows.net/{0}/services/hostedservices";
     public const string URISpecificHostedServiceFormat = "https://management.core.windows.net/{0}/services/hostedservices/{1}";
+    public const string URIStorageServiceFormat = "https://management.core.windows.net/{0}/services/storageservices";
+    public const string URISpecificStorageServiceFormat = "https://management.core.windows.net/{0}/services/storageservices/{1}";
+    public const string URIStorageServiceKeys = "https://management.core.windows.net/{0}/services/storageservices/{1}/keys";
     public const string URILocationsFormat = "https://management.core.windows.net/{0}/locations";
     public const string URIAffinityGroupFormat = "https://management.core.windows.net/{0}/affinitygroups";
Index: /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/IAzureProvider.cs
===================================================================
--- /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/IAzureProvider.cs	(revision 7544)
+++ /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/IAzureProvider.cs	(revision 7545)
@@ -27,7 +27,9 @@
     Subscription GetSubscriptionInfo(string subscriptionId, string thumbprint);
     HostedService GetHostedService(Subscription subscription, string serviceName);
+    StorageServiceKeys GetStorageKeys(Subscription subscription, string serviceName);
     List<string> ListLocations(Subscription subscription);
     List<HostedService> ListHostedServices(Subscription subscription);
     List<AffinityGroup> ListAffinityGroups(Subscription subscription);
+    List<StorageService> ListStorageServices(Subscription subscription);
     string CreateHostedService(Subscription subscription, string serviceName, string label, string description, AffinityGroup affinityGroup);
     string CreateHostedService(Subscription subscription, string serviceName, string label, string description, string location);
Index: /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/ServiceManagementOperation.cs
===================================================================
--- /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/ServiceManagementOperation.cs	(revision 7544)
+++ /branches/HeuristicLab.Hive.Azure/HeuristicLab.Clients.Hive.CloudManager/3.3/Azure/ServiceManagementOperation.cs	(revision 7545)
@@ -108,4 +108,22 @@
       else
         return new List<HostedService>();
+    }
+
+    public static List<StorageService> ListStorageServices(string subscriptionId, string thumbprint) {
+      string uri = string.Format(Constants.URIStorageServiceFormat, subscriptionId);
+      ServiceWebRequest operation = new ServiceWebRequest(thumbprint);
+      XDocument response = operation.Invoke(uri);
+      List<StorageService> result = null;
+      if (response.Root.HasElements) {
+        result = (from s in response.Elements()
+                  select new StorageService() {
+                    Url = s.Descendants(wa + "Url").Single().Value,
+                    ServiceName = s.Descendants(wa + "ServiceName").Single().Value
+                  }).ToList();
+      }
+      if (result != null)
+        return result;
+      else
+        return new List<StorageService>();
     }
 
@@ -170,4 +188,14 @@
     }
 
+    public static StorageServiceKeys GetStorageKeys(string subscriptionId, string thumbprint, string serviceName) {
+      string uri = string.Format(Constants.URIStorageServiceKeys, subscriptionId, serviceName);
+      ServiceWebRequest operation = new ServiceWebRequest(thumbprint);
+      XDocument response = operation.Invoke(uri);
+      StorageServiceKeys keys = new StorageServiceKeys();
+      keys.Primary = response.Descendants(wa + "Primary").Single().Value;
+      keys.Secondary = response.Descendants(wa + "Secondary").Single().Value;
+      return keys;
+    }
+
     public static string AddCertificate(string subscriptionId, string thumbprint, string serviceName, string certificateFilePath, string password) {
       string uri = String.Format(Constants.URICertificateFormat, subscriptionId, serviceName);
