IntelliJ IDEA 2024.1 ヘルプ

SSLHandshakeException のため、データベースに接続できません

Java セキュリティポリシー(英語)のため、TLS1.0 および TLS1.1 プロトコルの使用は無効になりました。この Java 更新により、これらのプロトコルをまだ受け入れる古いサーバーに接続しようとしたときに発生した javax.net.ssl.SSLHandshakeException エラーが発生しました。

修正として、これらのプロトコルを明示的に有効にすることができます。脆弱性の問題が発生する可能性があることに注意してください。新しいバージョンの TLS の使用を検討してください。

MySQL

  1. データソースのプロパティを開きます。次のいずれかのオプションを使用して、データソースのプロパティを開くことができます。

    • データベースツールウィンドウ ( 表示 | ツールウィンドウ | データベース ) で、データソースのプロパティアイコン The Data Source Properties icon をクリックします。

    • Shift+Enter を押します。

  2. 無効化されたアルゴリズムを有効にするデータソースを選択します(たとえば、MySQL 8.0.3)。次の必要なアルゴリズムが無効になっている可能性があります: SSLv3TLSv1TLSv1.1RC4DESMD5withRSADH keySize < 1024EC keySize < 2243DES_EDE_CBCanonNULLinclude jdk.disabled.namedCurves

  3. データソースの右側のペインで、接続のテストをクリックします。

  4. 通知で、実行するアクションを選択します。次のアクションから選択できます。

    • 無効なアルゴリズムの編集 : 選択したデータソースの詳細設定タブを開き、フォーカスを VM オプションフィールドに移動します。VM オプションフィールドでは、無効になっているアルゴリズムのリストを手動で編集できます(Djdk.tls.disabledAlgorithms オプションの場合)。

    • TLSv1 を有効にする : Djdk.tls.disabledAlgorithms オプションから TLSv1 を削除します。このアクションにより、TLS1.0 が有効になります。

    • TLSv1.1 を有効にする : Djdk.tls.disabledAlgorithms オプションから TLSv1.1 を削除します。このアクションにより、TLS1.1 が有効になります。

    • JDBC ドライバーですべてのプロトコルを有効にしてください : Djdk.tls.disabledAlgorithms オプションから SSLv3TLSv1TLSv1.1RC4DESMD5withRSADH keySize < 1024EC keySize < 2243DES_EDE_CBCanonNULLinclude jdk.disabled.namedCurves を削除します。このアクションにより、無効になっているすべてのアルゴリズムが有効になります。

  5. 接続のテストをクリックして、修正が機能するかどうかを確認します。

    最初に TLSv1 を有効にするTLSv1.1 を有効にするを試すことができます。それでもエラーが発生する場合は、他のアルゴリズムを有効にしてみてください。

    javax.net.ssl.SSLHandshakeException

Microsoft SQL Server

  1. ファイルブラウザーで、次の内容の custom.java.security ファイルを作成します。

    jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \ DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \ include jdk.disabled.namedCurves

    TLSv1 は、無効になっているアルゴリズムのリストから削除されていることに注意してください。

  2. データソースのプロパティを開きます。次のいずれかのオプションを使用して、データソースのプロパティを開くことができます。

    • データベースツールウィンドウ ( 表示 | ツールウィンドウ | データベース ) で、データソースのプロパティアイコン The Data Source Properties icon をクリックします。

    • Shift+Enter を押します。

  3. Microsoft SQL Server データソースを選択し、詳細設定タブをクリックして、次のオプションを VM オプションフィールドに追加します。-Djava.security.properties=${PATH_TO_FILE?}/custom.java.security ここで、${PATH_TO_FILE?} は、作成された custom.java.security ファイルへのパスです。

  4. メインメニューで、ファイル | キャッシュの破棄 | 再起動のみに移動します。

  5. Microsoft SQL Server データソースに接続してみてください。

    custom.java.security

関連ページ:

データベースツールウィンドウでデータベースオブジェクトが見つかりません

スキーマレベル以下のオブジェクトが表示されない、オブジェクトの変更が見つからない、壊れたテーブルがあるなどの視覚化の問題が発生した場合は、次の手順を実行して問題を解決してください。ステップ 1. データベースの状態をリフレッシュする:誰かがリモートデータベースのデータまたはビューを変更した場合、データベースのローカルビューはデータベースの実際の状態とは異なる可能性があります。データベースの状態を自動的に同期するには、データベースツールウィンドウ (表示 | ツールウィンドウ | データベース)...

トラブルシューティング資料

より正確で素早い回答のためにトラブルシューティング資料をアタッチすることを検討してください。ログファイル、スクリーンショット、アニメーション、ビデオ、データベースダンプなどの資料が調査に役立ちます。ログファイルを見つける:IntelliJ IDEA ログを検索するをクリックします。idea.log ファイルには、IDE のパフォーマンスに関する最近のログ情報が含まれています。idea.log ファイルには、IDE パフォーマンスに関する最近のログ情報が含まれています。SQL ログの場所を変更する S...