Lesezugriff über Azure Storage Explorer oder normaler Browser funktioniert für das vorhandene SAS-Token. Der Konsolenzugriff wirft eine Forbidden (403) -Ausnahme auf.Grundlegendes zu Azure CloudTableClient: Forbidden (403) Ausnahme
-Code wie unten für die referenzierte appconfig:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<appSettings>
<add key="SASToken" value="sv=[REMOVED]&tn=[REMOVED]&sig=[REMOVED]&se=[REMOVED]&sp=r" />
</appSettings>
</configuration>
-Code wie unten für die Konsole App:
StorageCredentials accountSAS = new StorageCredentials(CloudConfigurationManager.GetSetting("SASToken"));
CloudStorageAccount accountWithSAS = new CloudStorageAccount(storageCredentials: accountSAS, accountName: "acccount-name", endpointSuffix: "core.windows.net", useHttps: true);
CloudTableClient tableClient = accountWithSAS.CreateCloudTableClient();
CloudTable table = tableClient.GetTableReference("TableName");
if (table.Exists() == true)
{
Console.WriteLine("Table Exists.");
}
else
Console.WriteLine("Table Does not Exist.");
Ich bin verwirrt - nehmen Sie ein vorgeneriertes SAS-Token und hängen es an Ihre verschiedenen Verbindungen an? Wenn ja: So funktioniert SAS nicht. –
Ich versuche nur eine Verbindung zu einem Tabellenspeicher über eine Konsolenanwendung herzustellen, indem ich ein schreibgeschütztes SAS-Token verwende, das mir zur Verfügung gestellt wurde. – Joel