Amazon S3 не может заставить SSL работать с c # sdk

Я использую Amazon AWS .NET SDK v1.2.1.

Следующий код вызывает исключение после неудачного поиска в DNS для myBucket.more.https , что явно не то, что ему следует искать ...

AmazonS3Config S3Config = new AmazonS3Config()
{
    ServiceURL = "https://s3.amazonaws.com",
    CommunicationProtocol = Amazon.S3.Model.Protocol.HTTPS,
};

using (AmazonS3 client = Amazon.AWSClientFactory.CreateAmazonS3Client(accessKey,secretKey, S3Config))
{
    PutObjectRequest request = new PutObjectRequest();

    using (MemoryStream ms = new MemoryStream(inputBytes))
    {
        request.WithBucketName("myBucket.more")
                .WithKey(output.Name)
                .WithInputStream(ms);

        using (S3Response response = client.PutObject(request))
        {
                        Log.Message("File Sent: " + output.Name);
        }
    }
}

Если я удалю https : // в начале ServiceURL выдает веб-исключение с:

«Базовое соединение было закрыто: не удалось установить доверительные отношения для безопасного канала SSL / TLS».

Так как же мне заставить работать SSL?

Единственный способ, которым я до сих пор справился, - это небезопасно:

AmazonS3Config S3Config = new AmazonS3Config()
{
    ServiceURL = "s3.amazonaws.com",
    CommunicationProtocol = Amazon.S3.Model.Protocol.HTTP,
};

ОБНОВЛЕНИЕ

Если я не передаю пользовательский S3Config для CreateAmazonS3Client , он все еще не работает с:

«Базовое соединение было закрыто: не удалось установить доверительные отношения для безопасного канала SSL / TLS.»

«Удаленный сертификат недействителен в соответствии с в процедуру проверки. "

8
задан Tim 27 January 2011 в 17:12
поделиться