自動クライアント/サーバー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の構成」