MySQL データベースに双方向 SSL 認証を実装する方法
MySQL サーバーの構成
3.1 自己署名証明書の生成
コマンド ラインで次のコマンドを実行して、自己署名証明書と秘密キー ファイルを生成します。
$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout server-key.pem -out server-cert.pem
証明書を入力します。指示に従って関連情報を入力します。生成されたserver-cert.pemファイルはサーバー証明書であり、server-key.pemファイルはサーバー秘密キーです。
3.2 MySQL 設定ファイルの編集
MySQL 設定ファイル my.cnf または my.ini を開き、次の設定項目を追加します。
[mysqld] ssl-ca=/path/to/ca-cert.pem ssl-cert=/path/to/server-cert.pem ssl-key=/path/to/server-key.pem
その中に、 /path/to / は、証明書ファイルのストレージ パスです。これらの構成項目は、MySQL サーバーの CA、サーバー証明書、およびサーバー秘密キーを指定します。
3.3 MySQL サーバーの再起動
MySQL サーバーを再起動して、設定項目を有効にします。
クライアント接続の構成
4.1 クライアント証明書とキー ペアの生成
コマンド ラインで次のコマンドを実行して、クライアント証明書と秘密キー ファイルを生成します。
$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout client-key.pem -out client-cert.pem
プロンプトに従って証明書関連の情報を入力します。生成された client-cert.pem ファイルはクライアント証明書であり、client-key.pem ファイルはクライアントの秘密キーです。
4.2 クライアント接続パラメータの構成
MySQL データベースに接続するアプリケーション コードに、次の接続パラメータを追加します:
jdbc:mysql://hostname:port/database?ssl=true&verifyServerCertificate=true&clientCertificate=/path/to/client-cert.pem&clientKey=/path/to/client-key.pem
その中には、ホスト名とポートがあります。はそれぞれMySQLサーバーのホスト名とポート番号、databaseは接続するデータベースの名前です。
概要:
上記の手順により、MySQL データベースに双方向 SSL 認証を正常に実装できました。双方向 SSL 認証はデータベース接続を保護し、機密データを不正アクセスから保護します。ただし、システムのセキュリティを確保するために、証明書を定期的に更新し、秘密キーを適切に保管することに注意する必要があります。
以上がMySQL データベースに双方向 SSL 認証を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。