0

一段时间以来,我们一直在访问托管在 Amazon S3 上的供应商提供的文件,今天注意到我们的应用程序在尝试下载它时收到此消息

未指定用户名/密码

我们通过他们的站点点击文件,但它通过隧道进入他们的 S3 帐户。它是带有基本身份验证的 Https,因此我们通过浏览器对其进行了测试,没有任何问题。这是我们用来调用它的代码

  System.Uri responseUri = new System.Uri(DownloadFileLocation);
  WebClient client = new WebClient ();
  string authInfo = UserName + ":" + Password;
  authInfo = Convert.ToBase64String(Encoding.Default.GetBytes(authInfo));
  client.Headers["Authorization"] = "Basic " + authInfo;
  client.Headers.Add(HttpRequestHeader.UserAgent, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.75 Safari/537.1");
  client.Headers.Add("Accept: text/html,application/zip,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
  client.Headers.Add("Accept-Encoding: gzip,deflate,sdch");
  client.Headers.Add("Accept-Language: en-US,en;q=0.8");
  client.Headers.Add("Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3");
  client.DownloadFile(responseUri, LocalFilePath);

当调用 DownloadFile() 方法时,我们得到上述错误消息,没有任何其他指示。我在亚马逊开发者论坛上环顾四周,没有看到任何东西。任何帮助将不胜感激,谢谢

4

2 回答 2

0

Amazon S3 不支持基本身份验证,因此我怀疑您实际上并没有直接访问 S3,而是一些处理身份验证的中间层。那是您应该寻找问题和可能的解决方案的地方。

有关当前支持的 S3 身份验证模式的信息,请查看:

http://s3.amazonaws.com/doc/s3-developer-guide/RESTAuthentication.html

于 2013-08-12T16:17:08.017 回答
0

通过在他们这边修复基本身份验证的供应商

于 2013-08-23T15:46:01.957 回答