Menu Close

第9章 Data Grid 接続の保護

Red Hat OpenShift サービス証明書またはカスタム TLS 証明書を使用して、クライアントと Data Grid ノード間の接続を暗号化します。

9.1. Red Hat OpenShift Service 証明書による暗号化

Data Grid Operator は、Red Hat OpenShift サービス CA によって署名された TLS 証明書を自動的に生成します。その後、Data Grid Operator は証明書および鍵をシークレットに保存し、それらを取得し、リモートクライアントで使用できるようにします。

Red Hat OpenShift サービス CA が利用可能な場合、Data Grid Operator は以下の spec.security.endpointEncryption 設定を Infinispan CR に追加します。

spec:
  ...
  security:
    endpointEncryption:
      type: Service
      certServiceName: service.beta.openshift.io 1
      certSecretName: example-infinispan-cert-secret 2
1
Red Hat OpenShift Service を指定します。
2
サービス証明書 tls.crt およびキー tls.key が含まれるシークレットを PEM 形式で指定します。名前を指定しない場合、Data Grid Operator は <cluster_name>-cert-secret を使用します。
注記

サービス証明書は、Data Grid クラスターの内部 DNS 名を共通名 (CN) として使用します。以下に例を示します。

Subject: CN = example-infinispan.mynamespace.svc

このため、サービス証明書は OpenShift 内部でのみ完全に信頼されます。OpenShift の外部で実行しているクライアントとの接続を暗号化する場合は、カスタム TLS 証明書を使用する必要があります。

サービス証明書は 1 年間有効であり、期限が切れる前に自動的に置き換えられます。

9.1.1. TLS 証明書の取得

暗号化シークレットから TLS 証明書を取得して、クライアントトラストストアを作成します。

  • 以下のように暗号化シークレットから tls.crt を取得します。
$ oc get secret example-infinispan-cert-secret \
-o jsonpath='{.data.tls\.crt}' | base64 --decode > tls.crt