3.7.3. 信頼できない TLS 証明書の OpenShift Dev Space へのインポート


デフォルトでは、OpenShift Dev Spaces コンポーネント間の外部通信は TLS で暗号化されます。プロキシー、ソースコードリポジトリー、ID プロバイダーなどの外部サービスとの OpenShift Dev Spaces コンポーネントの通信にも、TLS が必要になる場合があります。TLS で暗号化されたすべての通信では、信頼できる認証局 (CA) によって署名された TLS 証明書を使用する必要があります。

OpenShift Dev Spaces コンポーネントまたは外部サービスが使用する証明書が信頼できない CA によって署名されている場合、CA 証明書を OpenShift Dev Spaces インスタンスにインポートして、すべての OpenShift Dev Spaces コンポーネントが証明書を信頼された CA によって署名されたものとして扱うようにする必要があります。次の場合にこれを行う必要があります。

  • 基盤となる OpenShift クラスターが、信頼されていない CA によって署名された TLS 証明書を使用ている場合。OpenShift Dev Spaces サーバーまたはワークスペースのコンポーネントが、信頼できない CA によって署名された TLS 証明書を使用する外部 OIDC プロバイダーまたは Git サーバーに接続している場合。

OpenShift Dev Spaces は、TLS 証明書のソースとしてプロジェクト内のラベル付き ConfigMap を使用します。ConfigMap には、それぞれ証明書数の乱数を持つ任意の数のキーを指定できます。

注記

OpenShift クラスターにクラスター全体の信頼できる CA 証明書が クラスター全体のプロキシー設定 を通じて追加されている場合、OpenShift DevSpaces Operator はそれらを検出し、この ConfigMap に自動的に挿入します。OpenShift Dev Spaces は、ConfigMap に config.openshift.io/inject-trusted-cabundle="true" ラベルを自動的にラベル付けします。このアノテーションに基づいて、OpenShift は ConfigMap の ca-bundle.crt キー内にクラスター全体で信頼される CA 証明書を自動的に挿入します。

重要

一部の OpenShift Dev Spaces コンポーネントでは、エンドポイントを信頼するために完全な証明書チェーンが必要です。クラスターが中間証明書で設定されている場合は、自己署名ルートを含むチェーン全体を OpenShift Dev Spaces に追加します。

3.7.3.1. OpenShift Dev Spaces への新しい CA 証明書の追加

次の手順は、すでにインストールおよび実行されているインスタンスと、インストールされるインスタンスに適用されます。

前提条件

  • 宛先 OpenShift クラスターへの管理権限を持つアクティブな oc セッション。Getting started with the CLI を参照してください。
  • OpenShift Dev Space の namespace が存在します。

手順

  1. インポートする必要のある証明書をローカルファイルシステムに保存します。

    注意
    • 導入句が BEGIN TRUSTED CERTIFICATE の証明書は、Java でサポートされていない PEM TRUSTED CERTIFICATE 形式である可能性があります。次のコマンドを使用して、サポートされている CERTIFICATE 形式に変換します。

      • openssl x509 -in cert.pem -out cert.cer
  2. 必要な TLS 証明書で新規 ConfigMap を作成します。

    $ oc create configmap custom-certs --from-file=<bundle-file-path> -n=openshift-devspaces

    複数のバンドルを適用するには、別の -from-file=<bundle-file-path> を追加します。または、別の ConfigMap を作成します。

  3. app.kubernetes.io/part-of=che.eclipse.orgapp.kubernetes.io/component=ca-bundle のラベルを使用して作成した ConfigMap にラベルを付けます。

    $ oc label configmap custom-certs app.kubernetes.io/part-of=che.eclipse.org app.kubernetes.io/component=ca-bundle -n <devspaces-namespace-name>
  4. 以前にデプロイされていない場合は、OpenShift Dev Spaces をデプロイします。それ以外の場合は、OpenShift Dev Spaces コンポーネントのロールアウトが完了するまで待ちます。
  5. 変更を有効にするには、実行中のワークスペースを再起動します。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.