自動クライアント/サーバーTLS暗号化のためのTimesTenClassicオブジェクトの構成について
TimesTenClassicオブジェクト定義に.spec.ttspec.clientTLSセクションを含めることで、TimesTenClassicオブジェクトをカスタマイズして、自動クライアント/サーバーTLS暗号化を有効にできます。TimesTenClassicオブジェクト定義に.spec.ttspec.clientTLSセクションを含め、.spec.ttspec.clientTLS.autoをtrueに設定すると、TimesTenオペレータにより、自己署名証明書が作成され、それらの証明書をクライアント/サーバーの暗号化に使用するようTimesTenが構成されます。
.spec.ttspec.clientTLSを使用するTimesTenClassicオブジェクトのスニペットを示します。apiVersion: timesten.oracle.com/v4
kind: TimesTenClassic
metadata:
name: sampletls
spec:
ttspec:
storageClassName: oci-bv
clientTLS:
auto: true
ciphersuites: SSL_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
eccurve: p256
encryption: required
signAlg: ecdsasha384
validity: 365
storageSize: 10Gi
image: container-registry.oracle.com/timesten/timesten:22.1.1.34.0
imagePullSecret: sekret
dbConfigMap:
- sampletls.spec.ttspec.clientTLSをさらに詳しく見てみましょう:
-
auto: 自動クライアント/サーバー暗号化を有効にするかどうかを決定します。autoをtrueに設定すると、自動クライアント/サーバー暗号化が有効になります。デフォルトは、falseです。falseに設定すると、このTimesTenClassicオブジェクトでは自動クライアント/サーバー暗号化は行われません。 -
ciphersuites: クライアント/サーバー通信に使用される暗号スイートを定義します。1つ以上の暗号スイートを指定できます。複数の暗号スイートがある場合は、カンマ区切りのリストを使用し、優先順に暗号スイートをリストします。この例では、SSL_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384を指定します。最初にTimesTenオペレータは、db.iniファイルにciphersuitesエントリがあるかどうかを確認します。-
エントリがある場合、TimesTenオペレータはそのエントリを使用します。
-
エントリがない場合、TimesTenオペレータは
.spec.ttspec.clientTLS.ciphersuitesで指定された値を使用します。 -
.spec.ttspec.clientTLS.autoがtrueで、db.iniファイルと.spec.ttspec.clientTLS.ciphersuitesのどちらにも値が指定されていない場合、TimesTenオペレータは値をSSL_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256に設定します。
TimesTenオペレータは、
ciphersuites値をTimesTenサーバーのsys.odbc.iniファイルに追加します。 -
-
eccurve: 楕円曲線署名アルゴリズムを定義します。この例では、p256を指定します。TimesTenオペレータはTimesTen
ttCreateCertsユーティリティを実行するときに、TimesTenttCreateCertsユーティリティの-eccurveオプションに.spec.ttspec.clientTLS.eccurve値を指定します。値を指定しない場合、デフォルトはp384です。サポートされている値のリストは、TimesTenClassicSpecSpecClientTLSを参照してください。 -
encryption: クライアント/サーバー・アクセスの暗号化設定を定義します。この例では、requiredを指定します。最初にTimesTenオペレータは、オブジェクトのdb.iniファイルにencryptionエントリがあるかどうかを確認します。-
エントリがある場合、TimesTenオペレータはそのエントリを使用します。
-
エントリがない場合、TimesTenオペレータは
.spec.ttspec.clientTLS.encryptionで指定された値を使用します。 -
.spec.ttspec.clientTLS.autoがtrueで、db.iniファイルと.spec.ttspec.clientTLS.encryptionのどちらにも値が指定されていない場合、デフォルトはacceptedです。サポートされている値のリストは、TimesTenClassicSpecSpecClientTLSを参照してください。
TimesTenオペレータは、
encryption値をTimesTenサーバーのsys.odbc.iniファイルに追加します。 -
-
signAlg: 楕円曲線署名アルゴリズムを定義します。この例では、ecdsasha384を指定します。TimesTenオペレータはTimesTen
ttCreateCertsユーティリティを実行するときに、TimesTenttCreateCertsユーティリティの-sign_algオプションに.spec.ttspec.clientTLS.signAlg値を指定します。値を指定しない場合、デフォルトはecdsasha384です。サポートされている値のリストは、TimesTenClassicSpecSpecClientTLSを参照してください。 -
validity: 作成された証明書が有効な日数を定義します。この例では、365を指定しますTimesTenオペレータはTimesTen
ttCreateCertsユーティリティを実行するときに、TimesTenttCreateCertsユーティリティの-validityオプションに.spec.ttspec.clientTLS.validity値を指定します。値を指定しない場合、デフォルトは3650です。サポートされている値のリストは、TimesTenClassicSpecSpecClientTLSを参照してください。
-
このマニュアルの「TimesTenClassicSpecSpecClientTLS」。
-
『Oracle TimesTen In-Memory Databaseセキュリティ・ガイド』の「クライアント/サーバー用のTLSの構成」