.Net 4.5 で組んでいるアプリから、サクラインターネットのwebサーバーにあるAPIに、HTTPS通信するようにしていたシステムが、ある日突然
「接続が切断されました: 送信時に、予期しないエラーが発生しました。。」
とエラーをだすようになりました。
証明書の期限切れかと思ったのですが、それは問題なかった。
結局、エラーをキーワードに調べまわって、やっとわかったことがTLS1.0、1.1の廃止に伴うものでした。。
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZ0eHQ9JTIwVExTMS4yJUUzJTgyJUI1JUUzJTgzJTlEJUUzJTgzJUJDJUUzJTgzJTg4JUUzJTgxJTk5JUUzJTgyJThCJUUzJTgyJUI1JUUzJTgzJUJDJUUzJTgzJTkwJUUzJTgxJUE4JUUzJTgxJUFFSFRUUFMlRTklODAlOUElRTQlQkYlQTElRTUlQUUlOUYlRTglQTMlODUmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTc2ZmJhM2MxYTdjMzZlYzc1N2FkOTFiNGUzMzZmNGE3&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwdGFuaiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9YTg4NTc2MTkxODE0YTkzN2ZhNDEyZDlhYWVlNzQ2ZTI&blend-x=142&blend-y=491&blend-mode=normal&s=8286a06a4e0ea6c331737d77ec40f14b)
TLS1.2サポートするサーバとのHTTPS通信実装 - Qiita
SSL3.0、TLS1.0、TLS1.1の脆弱性が発見され、TLS1.2に移行するWebサイトが多数あります。TLS1.2の移行に伴い、SSL3.0、TLS1.0、TLS1.1の入り口も残していれば問題ないが、廃止された場合、いままで...
確かに、さくらインターネットからの発表がありましたね。エラーが発生し始めた時期的にもビンゴです。
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZ0eHQ9JTIwVExTMS4yJUUzJTgyJUI1JUUzJTgzJTlEJUUzJTgzJUJDJUUzJTgzJTg4JUUzJTgxJTk5JUUzJTgyJThCJUUzJTgyJUI1JUUzJTgzJUJDJUUzJTgzJTkwJUUzJTgxJUE4JUUzJTgxJUFFSFRUUFMlRTklODAlOUElRTQlQkYlQTElRTUlQUUlOUYlRTglQTMlODUmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTc2ZmJhM2MxYTdjMzZlYzc1N2FkOTFiNGUzMzZmNGE3&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwdGFuaiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9YTg4NTc2MTkxODE0YTkzN2ZhNDEyZDlhYWVlNzQ2ZTI&blend-x=142&blend-y=491&blend-mode=normal&s=8286a06a4e0ea6c331737d77ec40f14b)
TLS1.2サポートするサーバとのHTTPS通信実装 - Qiita
SSL3.0、TLS1.0、TLS1.1の脆弱性が発見され、TLS1.2に移行するWebサイトが多数あります。TLS1.2の移行に伴い、SSL3.0、TLS1.0、TLS1.1の入り口も残していれば問題ないが、廃止された場合、いままで...
というわけで、TLS1.2に対応できるように次のコードを付け加えました。
1 |
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12; |
参考:https://blogs.technet.microsoft.com/jpieblog/2015/04/07/net-framework-tls1-1-1-2/