.NET Core 2.0でMicrosoft.WindowsAzure.Storage C#ライブラリを使用しています。Azureストレージエミュレータ - CORSを動的に設定するとサーバ認証エラーが発生する
"Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature".
public async void ConfigureCors() {
ServiceProperties serviceProperties = await this.blobClient.GetServicePropertiesAsync();
serviceProperties.Cors = new CorsProperties();
serviceProperties.Cors.CorsRules.Clear();
serviceProperties.Cors.CorsRules.Add(new CorsRule() {
AllowedHeaders = allowedCorsHeaders,
ExposedHeaders = allowedCorsExposedHeaders,
AllowedOrigins = allowedCorsOrigin,
AllowedMethods = allowedCorsMethods,
MaxAgeInSeconds = allowedCorsAgeInSeconds
});
await blobClient.SetServicePropertiesAsync(serviceProperties);
}
私が直接、ローカルサーバー上のアップロードファイル用のSASキーを生成することができるよ、しかし、ことはできません:私はAzureストレージエミュレータで動的にCORSを設定しようとしているが、エラーを取得しています。このライブラリを使用して C#コードでストレージにアクセスできるようにCORSを動的に構成します。
Azure Storage Cloudを使用すると上記のコードが正常に動作していますが、ローカルエミュレータがこのエラーをスローしています。
バージョン情報:
WindowsAzure.Storageバージョン8.4.0
のWindows Azureストレージエミュレーターバージョン5.2.0.0
AzureのストレージExplorerのバージョンは0.9.01
です接続に使用された証明書:
AccountName = devstoreaccount1;
AccountKey = Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuF q2UVErCz4I6tq/K1SZFP TOtr/KBHBeksoGMGw ==;
WindowsAzure.Storageバージョンは8.4.0 のWindows Azureストレージエミュレーターバージョン5.2です.0.0 Azureストレージエクスプローラバージョンは0.9.01 –
接続に使用される資格情報:AccountName = devstoreaccount1; AccountKey = Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UverCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw ==; –