TiDB Cloud ServerlessへのTLS接続
クライアントとTiDB Cloud Serverless クラスター間の安全な TLS 接続を確立することは、データベースに接続するための基本的なセキュリティ対策の 1 つです。TiDB TiDB Cloud Serverless のサーバー証明書は、独立したサードパーティの証明書プロバイダーによって発行されます。サーバー側のデジタル証明書をダウンロードしなくても、 TiDB Cloud Serverless クラスターに簡単に接続できます。
前提条件
- パスワード認証またはSSO認証でTiDB Cloudにログインします。
- TiDB Cloud Serverless クラスターを作成する 。
TiDB Cloud Serverless クラスターへの TLS 接続
TiDB Cloudコンソールでは、さまざまな接続方法の例を取得し、次のようにTiDB Cloud Serverless クラスターに接続できます。
プロジェクトのクラスターページに移動し、クラスターの名前をクリックして概要ページに移動します。
右上隅の「接続」をクリックします。ダイアログが表示されます。
ダイアログでは、接続タイプのデフォルト設定を
Public
のままにして、希望する接続方法とオペレーティング システムを選択します。まだパスワードを設定していない場合は、 「パスワードの生成」をクリックして、 TiDB Cloud Serverless クラスターのランダム パスワードを生成します。パスワードはサンプル接続文字列に自動的に埋め込まれ、クラスターに簡単に接続できるようになります。
注記:
- ランダム パスワードは、大文字、小文字、数字、特殊文字を含む 16 文字で構成されます。
- このダイアログを閉じると、生成されたパスワードは再度表示されなくなるため、パスワードを安全な場所に保存する必要があります。パスワードを忘れた場合は、このダイアログの「パスワードのリセット」をクリックしてリセットできます。
- TiDB Cloud Serverless クラスターにはインターネット経由でアクセスできます。パスワードを他の場所で使用する必要がある場合は、データベースのセキュリティを確保するためにパスワードをリセットすることをお勧めします。
接続文字列を使用してクラスターに接続します。
注記:
TiDB Cloud Serverless クラスターに接続する場合は、ユーザー名にクラスターのプレフィックスを含め、名前を引用符で囲む必要があります。詳細については、 ユーザー名プレフィックス参照してください。
ルート証明書の管理
ルート証明書の発行と有効性
TiDB Cloud Serverless は、クライアントとTiDB Cloud Serverless クラスター間の TLS 接続の証明機関 (CA) として暗号化しましょうからの証明書を使用します。TiDB TiDB Cloud Serverless 証明書の有効期限が切れると、クラスターの通常の操作や確立された TLS セキュア接続に影響を与えることなく、証明書が自動的にローテーションされます。
Javaや Go など、クライアントがシステムのルート CA ストアをデフォルトで使用する場合、CA ルートのパスを指定せずに、 TiDB Cloud Serverless クラスターに安全かつ簡単に接続できます。ただし、一部のドライバーと ORM はシステム ルート CA ストアを使用しません。その場合は、ドライバーまたは ORM の CA ルート パスをシステム ルート CA ストアに設定する必要があります。たとえば、macOS 上の Python でmysqlクライアント使用してTiDB Cloud Serverless クラスターに接続する場合は、 ssl
引数にca: /etc/ssl/cert.pem
設定する必要があります。
複数の証明書が含まれる証明書ファイルを受け入れない DBeaver などの GUI クライアントを使用している場合は、 ISRGルートX1証明書をダウンロードする必要があります。
ルート証明書のデフォルトパス
異なるオペレーティング システムにおけるルート証明書のデフォルトのstorageパスは次のとおりです。
MacOS
/etc/ssl/cert.pem
Debian / Ubuntu / アーチ
/etc/ssl/certs/ca-certificates.crt
RedHat / Fedora / CentOS / Mageia
/etc/pki/tls/certs/ca-bundle.crt
高山
/etc/ssl/cert.pem
オープンSUSE
/etc/ssl/ca-bundle.pem
ウィンドウズ
Windows では、CA ルートへの特定のパスは提供されません。代わりに、 レジストリを使用して証明書を保存します。このため、Windows で CA ルート パスを指定するには、次の手順を実行します。
- ISRG ルート X1 証明書をダウンロードし、
<path_to_ca>
などの任意のパスに保存します。 - TiDB Cloud Serverless クラスターに接続するときは、パス (
<path_to_ca>
) を CA ルート パスとして使用します。
よくある質問
TiDB Cloud Serverless クラスターに接続するためにサポートされている TLS バージョンはどれですか?
セキュリティ上の理由から、 TiDB Cloud Serverless は TLS 1.2 と TLS 1.3 のみをサポートし、TLS 1.0 と TLS 1.1 バージョンはサポートしていません。詳細については、IETF TLS 1.0 および TLS 1.1 の廃止を参照してください。
接続クライアントとTiDB Cloud Serverless 間の双方向 TLS 認証はサポートされていますか?
いいえ。
TiDB Cloud Serverless は一方向の TLS 認証のみをサポートします。つまり、クライアントは公開キーを使用してTiDB Cloudクラスター証明書の秘密キーの署名を検証しますが、クラスターはクライアントを検証しません。
TiDB Cloud Serverless では、安全な接続を確立するために TLS を構成する必要がありますか?
標準接続の場合、 TiDB Cloud Serverless は TLS 接続のみを許可し、非 SSL/TLS 接続は禁止します。これは、SSL/TLS が、インターネット経由でTiDB Cloud Serverless クラスターに接続する際に、インターネットへのデータ漏洩のリスクを軽減するための最も基本的なセキュリティ対策の 1 つであるためです。
プライベート エンドポイント接続では、 TiDB Cloudサービスへの高度に安全な一方向アクセスがサポートされ、データがパブリック インターネットに公開されないため、TLS の構成はオプションです。