icoxfog417 / kintoneDotNET

サイボウズ社のkintoneを.NET Framework上で扱うためのライブラリです (※非公認)
http://icoxfog417.github.io/kintoneDotNET/Index.html
Apache License 2.0
14 stars 11 forks source link

サイボウズ TLS1.0無効化の影響について #32

Closed ShintaroSeki closed 6 years ago

ShintaroSeki commented 6 years ago

kintoneDotNETを活用し、社内システムとkintoneの連携を実装しているものです。お世話になります。 社内開発の工数が大幅に削減出来て、本当に助かりました。 先日、Cybozu社より「TLS1.0無効化」の案内がありました。https://www.cybozuconf.com/-/cloud この変更による当ライブラリへの影響はあるのでしょうか? 出来る事なら、今後も継続して利用したいと考えております。利用可能か、教えてください。 宜しくお願い致します。

icoxfog417 commented 6 years ago

ご利用をいただきありがとうございます。TLS1.0の無効化はブラウザに関わることなので、ツールへの影響はおそらくないと思います。

cy-takeuchi commented 6 years ago

私も興味があったので調べてみました。 以下の対応は完了している、という認識で良いでしょうか。

.NET Framework で TLS1.1 および 1.2 を有効化する方法 https://blogs.technet.microsoft.com/jpieblog/2015/04/07/net-framework-tls1-1-1-2/

こちらの内容を確認すると、以下の注意書きがあります。 https://www.cybozuconf.com/-/cloud#section-106

kintone API SDKや古いバージョンのJavaや.NETなどで開発されている場合、そのプログラムからTLS 1.0形式でcybozu.comに接続している可能性があります。

nonbin commented 6 years ago

横から失礼します。 本SDKのソースを確認したところ、 kintoneとの通信には「 HttpWebRequest 」のクラスが利用されておりました。

cy-takeuchi様のコメントにもあるURLにも以下の記載がございます。

HttpWebRequest クラスは、既定の状態では SSL3.0 および TLS1.0 が有効です。 System.Net.ServicePointManager クラスの SecurityProtocol プロパティで TLS1.1 および 1.2 を有効にできます。

改善手法としての  ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11 Or SecurityProtocolType.Tls12 こちらの対応は行われていないように思えます。

そのため、.NET Frameworkの規定値を利用した通信を行なっている可能性がありそうです。

.NET Framework 4.6以降の場合には規定値が、TLS 1.1もしくはTLS 1.2になっているため問題ございませんが、それ以前のものとなるとレジストリの変更などが必要になる可能性がありそうですね。 ※.NET Frameworkのパッチを適用した場合に、4.5などでは規定値を変更されているみたいですのでまず環境の確認が必要かと思われます。

1.連携アプリが動作している.NET Framework のバージョン  →4.6以降ならOK 2.それ以前のバージョンであれば、アップデートパッチがないか確認&アップデート 3.レジストリの確認(値が1ならOK)

キー:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft.NETFramework\v4.0.30319 名前:SchUseStrongCrypto 種類:REG_DWORD 値:1 ※ 64 bit OS 環境の場合は下記のキーにも設定してください HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft.NETFramework\v4.0.30319

参考になりましたら幸いです。

icoxfog417 commented 6 years ago

皆様調べていただきありがとうございます(これだけ使用されていたとは・・・)。

.NET Frameworkのバージョンを上げないといけないとは前々から思ってはいたので、対応フレームワークのバージョンアップを検討してみます。

icoxfog417 commented 6 years ago

33 で対応しました。不具合が発生した場合は、別途Issueを上げていただければと思います。

ShintaroSeki commented 6 years ago

ご対応ありがとうございました。 今回は諸事情によりこちらで修正してしまいましたが、今後もkintoneDotNetを活用させて頂きます。