9.3.8. 外部の RH-SSO インストールを使用する CodeReady Workspaces の設定

デフォルトでは、CodeReady Workspaces インストールには、専用の RH-SSO インスタンスのデプロイメントが含まれます。ただし、外部の RH-SSO を使用することも可能です。このオプションは、すでに定義されたユーザーを含む既存の RH-SSO インスタンス (複数のアプリケーションが使用する会社全体の RH-SSO サーバーなど) がある場合に役立ちます。

表9.3 サンプルで使用されるプレースホルダー

<provider-realm-name>

CodeReady Workspaces で使用することが意図された RH-SSO レルム名

<oidc-client-name>

<provider-realm-name>で定義される oidc クライアントの名前

<auth-base-url>

外部 RH-SSO サーバーのベース URL

前提条件

  • RH-SSO の外部インストールの管理コンソールで、CodeReady Workspaces に接続することが意図されたユーザーが含まれるレルムを定義します

    External RH-SSO realm
  • このレルムで、CodeReady Workspaces がユーザーの認証に使用される OIDC クライアントを定義します。以下は、正しい設定のあるクライアントの例です。

    External RH-SSO public client
    注記
    • Client Protocolopenid-connect にする必要があります
    • Access Typepublic でなければなりません。CodeReady Workspaces はパブリックアクセスタイプのみをサポートします
    • Valid Redirect URIs には、http プロトコルと他の https を使用する URI の 2 つ以上の CodeReady Workspaces サーバーに関連する URI が含まれる必要があります。これらの URI には CodeReady Workspaces サーバーのベース URL が含まれ、その後に /* ワイルドカードが必要です。
    • Web Origins には、http プロトコルと他の https を使用する URI の 2 つ以上の CodeReady Workspaces サーバーに関連する URI が含まれる必要があります。これらの URI には、CodeReady Workspaces サーバーのベース URL (ホストの後はパスがない) が含まれる必要があります。

      URI の数は、インストールされている製品ツールの数によって異なります。

  • デフォルトの OpenShift OAuth サポートを使用する CodeReady Workspaces では、ユーザー認証は、OpenShift OAuth と RH-SSO の統合に依存します。これにより、ユーザーは OpenShift ログインで CodeReady Workspaces にログインでき、独自のワークスペースを個人の OpenShift プロジェクトに作成することができます。

    これには、OpenShift "RH-SSO Identity Provider" を設定する必要があります。外部 RH-SSO を使用する場合は、RH-SSO を手動で設定します。手順については、OpenShift 3 [OpenShift3] または OpenShift4 [OpenShift4] の適切な RH-SSO ドキュメントを参照してください。

  • 設定した RH-SSO では、ストアトークンとストア トークンの読み取り専用オプションが有効になります

手順

  1. CheCluster カスタムリソース (CR)に以下のプロパティーを設定します。

    spec:
      auth:
        externalIdentityProvider: true
        identityProviderURL: <auth-base-url>
        identityProviderRealm: <provider-realm-name>
        identityProviderClientId: <oidc-client-name>
  2. OpenShift OAuth サポートを有効にして CodeReady Workspaces をインストールする場合は、CheCluster カスタムリソース (CR)に以下のプロパティーを設定します。

    spec:
      auth:
        openShiftoAuth: true
    # Note: only if the OpenShift "RH-SSO Identity Provider" alias is different from 'openshift-v3' or 'openshift-v4'
    server:
      customCheProperties:
        CHE_INFRA_OPENSHIFT_OAUTHIDENTITYPROVIDER: <OpenShift "RH-SSO Identity Provider" alias>