4

Amazon .NET SDKを使用していますが、ASP.NET MVCアプリからのファイルの追加は、開発マシンから正常に機能しています。アプリを(AppHarborに)デプロイする、次のエラーが発生します。

SSL/TLSのセキュリティで保護されたチャネルの信頼関係を確立できませんでした。

これが私が使用しているコードです:

var config = new Amazon.S3.AmazonS3Config();
config.CommunicationProtocol = Amazon.S3.Model.Protocol.HTTPS;

using (var client = Amazon.AWSClientFactory.CreateAmazonS3Client("key", "secret", config))
{
  var putRequest = new Amazon.S3.Model.PutObjectRequest();
  putRequest.BucketName = "media.bunkerapp.com";
  putRequest.CannedACL = Amazon.S3.Model.S3CannedACL.PublicRead;
  putRequest.ContentType = file.ContentType;
  putRequest.InputStream = file.InputStream;
  putRequest.Key = "mykey";

  Amazon.S3.Model.S3Response response = client.PutObject(putRequest);
  response.Dispose();
}

この質問に見られるように、EUバケットには。を含めることができないことは知っていますが、米国標準バケットを使用しています。繰り返しになりますが、ここでの問題は、AppHarborで機能していないことです。1インスタンスアプリにロールバックしようとしましたが、同じエラーがスローされます。スタックトレースは次のとおりです。

  at Amazon.S3.AmazonS3Client.ProcessRequestError(String actionName, HttpWebRequest request, WebException we, HttpWebResponse errorResponse, String requestAddr, WebHeaderCollection& respHdrs, Type t)
   at Amazon.S3.AmazonS3Client.Invoke[T](S3Request userRequest)
   at Amazon.S3.AmazonS3Client.PutObject(PutObjectRequest request)
   at MyController...

任意のポインタをいただければ幸いです。

4

1 に答える 1

3

この問題をローカルまたはAppHarborで再現することはできません。同様のコード、バケット名(米国)、および最新のAWSSDKを使用しています。

バージョンにダウングレードしよう1.3.4.1としましたが、説明したものと同様のエラーが発生しました(「検証手順に従ってリモート証明書が無効です」)。

AWS SDK for .NETの最新バージョン(現在1.4.3.0)にアップグレードすることが解決策になる場合があります。

于 2012-02-22T08:37:16.100 に答える