4.5. OpenID Connect (OIDC) プロトコルを使用した Ceph Dashboard SSO


Ceph Management スタックは、nginx および oauth2-proxy コンポーネントに依存するモジュール式のサービスベースのアーキテクチャーを使用して構築されます。

重要

OpenID Connect (OIDC) プロトコルを使用した Ceph Dashboard SSO は、Red Hat Ceph Storage 8.0 のテクノロジープレビュー機能です。

テクノロジープレビュー機能は、実稼働環境での Red Hat サービスレベルアグリーメント (SLA) ではサポートされておらず、機能的に完全ではない可能性があるため、Red Hat では実稼働環境での使用を推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。詳細は、「Red Hat テクノロジープレビュー機能のサポート範囲」を参照してください。

Ceph Management ゲートウェイ (mgmt-gateway) は、Ceph Dashboard とモニタリングの両方に対して、統合されたアクセス、向上したユーザーエクスペリエンス、および高可用性を提供します。

OAuth2 Proxy (oauth2-proxy) サービスは、強化されたセキュリティー、シームレスな SSO、および集中認証管理を提供します。

mgmt-gateway サービスを単独で有効化することで、クラスターへの単一エントリーポイントを提供し、モニタリングやダッシュボードの高可用性を実現するとともに、セキュリティーを強化します。SSO を使用するには、oauth2-proxy とともにサービスを有効にします。

Ceph Management ゲートウェイ (mgmt-gateway) および OAuth2 Proxy (oauth2-proxy) が設定されていると、nginx は、シングルサインオン (SSO) が設定されている場合、oauth2-proxy を介して、設定された Identity Provider (IdP) に自動的にユーザーを転送します。その後、IdP は認証とログインを実行します。

この設定には次の利点があります。

  • 統合されたアクセス。
  • ユーザーエクスペリエンスの向上
  • Ceph Dashboard とモニタリングの高可用性。
  • セキュリティーの強化。
  • シームレスな SSO。
  • 集中認証管理。

このモジュラー SSO ソリューションと Ceph Dashboard を使用した実装の詳細は、OAuth2 シングルサインオンの有効化 を参照してください。

4.5.1. Ceph Management ゲートウェイ (mgmt-gateway) の使用

Ceph Management ゲートウェイ (mgmt-gateway) サービスは、モジュール式のサービスベースのアーキテクチャー設計を提供します。Cephadm は、nginx 上に構築された `mgmt-gatewa`y サービスを管理します。このゲートウェイは、Ceph クラスターのフロントエンドおよび単一のエントリーポイントとして機能し、Ceph Dashboard やモニタリングスタックを含むすべての Ceph アプリケーションへの統合されたアクセスを提供します。

重要

Ceph Management ゲートウェイ (mgmt-gateway) の使用は、Red Hat Ceph Storage 8.0 のテクノロジープレビュー機能です。

テクノロジープレビュー機能は、実稼働環境での Red Hat サービスレベルアグリーメント (SLA) ではサポートされておらず、機能的に完全ではない可能性があるため、Red Hat では実稼働環境での使用を推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。詳細は、「Red Hat テクノロジープレビュー機能のサポート範囲」を参照してください。

nginx を使用すると、強力なコミュニティーサポートと高度なセキュリティー標準により、セキュリティーが強化され、アクセス管理が簡素化されます。mgmt-gateway サービスは、適切な Ceph アプリケーションインスタンスにリクエストをルーティングするリバースプロキシーとして機能します。Ceph Dashboard へのシングルサインオン (SSO) アクセスを有効にするには、mgmt-gateway を単独で、または認証用の OAuth2 Proxy サービスと併用します。OAuth2 プロキシーサービスの詳細は、OAuth2 プロキシー (oauth2-proxy) サービスの使用 を参照してください。

Ceph Management ゲートウェイを使用すると、さまざまな利点が得られます。

統合されたアクセス
Ceph Management ゲートウェイを使用すると、さまざまな利点が得られます。
ユーザーエクスペリエンスの向上
ユーザーは、各アプリケーションがどこで実行されているか (IP またはホスト) を追跡する必要がなくなりました。
Ceph Dashboard の高可用性
nginx 高可用性 (HA) メカニズムは、Ceph Dashboard の高可用性を提供するために使用されます。
モニタリングのための高可用性
nginx の高可用性メカニズムは、モニタリングの高可用性を提供するために使用されます。

mgmt-gateway をデプロイすると、セキュリティーが強化されます。mgmt-gateway サービスがデプロイされると、ユーザーは Ceph Dashboard を介した認証なしではモニタリングサービスにアクセスできなくなります。サービスがデプロイされると、Ceph Dashboard のリンクから Prometheus、Grafana、および Alertmanager アプリケーションにアクセスできるようになります。アプリケーションリンクにアクセスするには、Ceph Dashboard の Administration→Services に移動します。

注記

mgmt-gateway モードの場合、Prometheus と Alertmanager ではユーザーが一意のユーザー名とパスワードを定義する必要があります。デフォルトは admin:admin です。

nginx HA メカニズムは、Ceph Dashboard やモニタリングスタックを含むすべての Ceph 管理アプリケーションに高可用性を提供するために使用されます。mgmt-gateway サービスは、マネージャーのフェイルオーバーを透過的に処理し、ユーザーをアクティブなマネージャーにリダイレクトします。

モニタリングでは、Prometheus、Alertmanager、または Grafana の複数のインスタンスが利用可能な場合に、Ceph Management サービスが HA を処理します。リバースプロキシーは正常なインスタンスを自動的に検出し、それを使用してユーザー要求を処理します。

4.5.1.1. Ceph Management ゲートウェイの制限

mgmt-gateway サービスの使用には次の制限があります。

  • mgmt-gateway サービス自体の高可用性設定とクラスタリングは現在サポートされていません。
  • サービスは、プロキシーされるアプリケーションに基づいて適切なポートにバインドする必要があります。サービスの可用性を妨げる可能性のあるポートの競合がないことを確認します。
  • mgmt-gateway サービスは内部的に nginx リバースプロキシーを使用します。デフォルトで使用されるデフォルトのコンテナーイメージを見つけるには、以下を使用します。

    DEFAULT_NGINX_IMAGE = 'quay.io/ceph/NGINX_IMAGE'
    Copy to Clipboard Toggle word wrap

    ストレージ管理者は、container_image_nginx cephadm モジュールオプションを変更することで、使用されているイメージを変更できます。他のデーモンが実行されていた場合は、新しいイメージを使用するためにデーモンを再デプロイする必要があります。

    ceph config set mgr mgr/cephadm/container_image_nginx NEW_NGINX_IMAGE
    ceph orch redeploy mgmt-gateway
    Copy to Clipboard Toggle word wrap

4.5.1.2. コマンドラインインターフェイスで Ceph Management ゲートウェイを有効にする

Dashboard と Ceph クラスターへの SSO アクセスのために Ceph Management ゲートウェイを有効にします。この情報を使用して、cephadm CLI コマンドで mgmt-gateway サービスを有効にします。

手順

  1. mgmt-gateway サービスをデプロイします。

    構文

    ceph orch apply mgmt-gateway [--placement=DESTINATION_HOST] [--enable-auth=true]
    Copy to Clipboard Toggle word wrap

    注記

    oauth2-proxy で SSO を有効にするには、--enable-auth=true パラメーターが必須です。

    [ceph: root@host01 /]# ceph orch apply mgmt-gateway --placement=host01
    Copy to Clipboard Toggle word wrap

  2. サービスが正しくデプロイされたことを確認します。

4.5.1.3. サービス仕様ファイルを使用して Ceph Management ゲートウェイを有効にする

Dashboard と Ceph クラスターへの SSO アクセスのために Ceph Management ゲートウェイを有効にします。この情報を使用して、サービス仕様ファイルで mgmt-gateway サービスを有効にします。

前提条件

Ceph Management ゲートウェイを有効にする前に、mgmt-gateway サービスが実行される各 Ceph ノードに次のものがあることを確認してください。

  • ゲートウェイサービスが使用するポート。
  • 稼働中の Red Hat Ceph Storage クラスター。
  • (オプション) 使用中の SSL プロトコル。
  • (オプション) SSL 暗号。
  • (オプション) SSL 証明書と証明書キー。

SSL プロトコル、暗号、証明書、および証明書キーの詳細は、Red Hat Enterprise Linux ドキュメントの Web サーバーおよびリバースプロキシーのデプロイ を参照してください。

手順

  1. mgmt-gateway サービス用の YAML ファイルを作成します。

    [root@host01 ~]# touch mgmt-gateway.yaml
    Copy to Clipboard Toggle word wrap

  2. YAML ファイルを編集して、次の詳細を追加します。

    重要

    次のフィールドはオプションです: ssl_protocolsssl_ciphers、および ssl_certificate。省略すると、mgmt-gateway サービスは安全でセキュアな設定を使用します。これらのフィールドを変更することは許可されていますが、システムのセキュリティーが侵害される可能性があるため、注意して行う必要があります。

    構文

    service_type: mgmt-gateway
    placement:
      hosts:
        - ceph-node-1
    spec:
     port: 9443
     ssl_protocols:   # Optional
       - TLSv1.3
     ssl_ciphers:     # Optional
       - AES128-SHA
       - AES256-SHA
       - RC4-SHA
     ssl_cert: |   # Optional
       -----BEGIN CERTIFICATE-----
       < YOU CERT DATA HERE >
       -----END CERTIFICATE-----
     ssl_key: |
      -----BEGIN RSA PRIVATE KEY-----
       < YOU PRIV KEY DATA HERE >
      -----END RSA PRIVATE KEY-----
    Copy to Clipboard Toggle word wrap

    重要

    TLSv1.3 SSL プロトコルを使用します。TLSv1.3 には、デフォルトで安全な暗号のセットが含まれています。TLSv1.2 はサポートされていますが、このプロトコルを使用する場合は、安全な暗号のサブセットのみを使用することが重要です。弱い暗号や古い暗号を使用すると、システムのセキュリティーが著しく損なわれる可能性があります。

    service_type: mgmt-gateway
    service_id: gateway
    placement:
      hosts:
        - ceph0
    spec:
     port: 5000
     ssl_protocols:
       - TLSv1.3
       - ...
     ssl_ciphers:
       - AES128-SHA
       - AES256-SHA
       - ...
     ssl_cert: |
       -----BEGIN CERTIFICATE-----
       MIIDtTCCAp2gAwIBAgIYMC4xNzc1NDQxNjEzMzc2MjMyXzxvQ7EcMA0GCSqGSIb3
       DQEBCwUAMG0xCzAJBgNVBAYTAlVTMQ0wCwYDVQQIDARVdGFoMRcwFQYDVQQHDA5T
       [...]
       -----END CERTIFICATE-----
    ssl_key: |
       -----BEGIN PRIVATE KEY-----
       MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC5jdYbjtNTAKW4
       /CwQr/7wOiLGzVxChn3mmCIF3DwbL/qvTFTX2d8bDf6LjGwLYloXHscRfxszX/4h
       [...]
       -----END PRIVATE KEY-----
    Copy to Clipboard Toggle word wrap

    次の表は、仕様ファイル (ceph.deployment.service_spec.MgmtGatewaySpec) の mgmt-gateway サービスセクションに固有のフィールドを示しています。

    Expand
    表4.1 仕様ファイル内の mgmt-gateway 固有のフィールド
    フィールド説明

    disable_https

    HTTPS を無効にするフラグです。True の場合、サーバーは安全でない HTTP を使用します。

    enable_auth

    SSO auth を有効にするフラグです。SSO 認証には oauth2-proxy がアクティブである必要があります。

    networks

    デーモンにそのリスト内の特定のネットワークにのみバインドするように指示するネットワークアイデンティティーのリスト。クラスターが複数のネットワークに分散されている場合は、複数のネットワークを追加できます。

    placement

    オーケストレーターがサービスをデプロイするには、デーモンをどこにデプロイするか、またいくつデプロイするかを知る必要があります。これは配置仕様のロールです。配置仕様は、コマンドライン引数として渡すことも、YAML ファイルで渡すこともできます。詳細は、Ceph Orchestrator を使用したサービスの管理 を参照してください。

    ポート

    サーバーがリッスンするポート番号。

    server_tokens

    応答内のフラグ制御サーバートークン: onoffbuildstring

    ssl_cert

    SSL 証明書を含む複数行の文字列。

    ssl_key

    SSL キーを含む複数行の文字列。

    ssl_ciphers

    サポートされている安全な SSL 暗号のリスト。このリストを変更すると、システムのセキュリティーが低下する可能性があります。

    ssl_prefer_server_ciphers

    クライアント暗号よりもサーバー暗号を優先する: onoff

    ssl_protocols

    サポートされている SSL プロトコルのリスト (nginx でサポートされているもの)。

    ssl_session_cache

    SSL/TLS セッションがキャッシュされる期間: offnone[builtin[:size]][shared:name:size]

    ssl_session_tickets

    セッションチケットを制御するための複数オプションフラグ: onoff

    ssl_session_timeout

    SSL セッションタイムアウトの期間。構文: 時間 (例: 5m)。

    ssl_stapling

    SSL ステープルを有効または無効にするフラグ: onoff

    ssl_stapling_verify

    SSL ステープルの検証を制御するフラグ: onoff

  3. 仕様ファイルを適用します。

    構文

    [root@host01 ~]# ceph orch apply -i mgmt-gateway.yaml
    Copy to Clipboard Toggle word wrap

4.5.2. OAuth2 プロキシー (oauth2-proxy) サービスの使用

OAuth2 Proxy サービスは、Ceph アプリケーションの認証とアクセス制御を管理するための高度な方法を提供します。oauth2-proxy サービスは、外部のアイデンティティープロバイダー (IdP) と統合して、OpenID Connect (OIDC) プロトコルを使用した安全で柔軟な認証を提供します。oauth2-proxy は認証ゲートウェイとして機能し、Ceph アプリケーションへのアクセスが厳密に制御されるようにします。

重要

OAuth2 Proxy (oauth2-proxy) サービスの使用は、Red Hat Ceph Storage 8.0 のテクノロジープレビュー機能です。

テクノロジープレビュー機能は、実稼働環境での Red Hat サービスレベルアグリーメント (SLA) ではサポートされておらず、機能的に完全ではない可能性があるため、Red Hat では実稼働環境での使用を推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。詳細は、「Red Hat テクノロジープレビュー機能のサポート範囲」を参照してください。

認証付き OAuth2 Proxy サービスを使用するには、Ceph Management ゲートウェイ (mgmt-gateway) を使用する必要があります。詳細は、Ceph Management ゲートウェイ (mgmt-gateway) の使用 を参照してください。

oauth2-proxy サービスを使用すると、さまざまな利点が得られます。

セキュリティー強化
OIDC プロトコルを使用して外部 IdP と統合することで、堅牢な認証を提供します。
シームレスなシングルサインオン (SSO)
すべての Ceph モニタリングアプリケーションでシームレスな SSO を有効にし、ユーザーアクセス制御を改善します。Ceph Dashboard で OAuth2 SSO を有効にする方法の詳細は、OAuth2 シングルサインオンの有効化 を参照してください。
集中認証
認証管理を集中化し、複雑さを軽減し、アクセスの制御を改善します。

oauth2-proxy サービスを導入すると、セキュリティーが強化されます。oauth2-proxy サービスがデプロイされると、Ceph アプリケーションへのすべてのアクセスは、OIDC を使用して外部 IdP を通じて認証される必要があります。認証により、権限のないユーザーが機密情報にアクセスするのを防ぎます。ユーザーはログインのために IdP にリダイレクトされ、その後要求されたアプリケーションに戻されます。このセットアップにより、安全なアクセスが確保され、Ceph 管理スタックとシームレスに統合されます。Prometheus、Alertmanager、Grafana Ceph アプリケーションはすべて、必要な IdP を介した認証を必要とします。

oauth2-proxy サービスは、OAuth プロバイダーオープンソースプロジェクトを使用して、さまざまな外部 IdP とのサービス統合を容易にし、安全で柔軟な認証メカニズムを提供します。有効な OAuth プロバイダーの完全なリストは、OAuth2 Proxy DocsOAuth プロバイダー設定 を参照してください。

4.5.2.1. OAuth2 Proxy の制限

oauth2-proxy サービスは、高可用性設定をサポートしていません。

重要

認証の失敗を回避するには、IdP および OAuth2 Proxy パラメーターを適切に設定することが重要です。誤った設定はアクセスの問題を引き起こす可能性があります。

4.5.2.2. Red Hat Single Sign-On 7.6.0 で管理者アカウントを作成する

OAuth2 サービスを Ceph ダッシュボードに同期するための管理者アカウントを作成します。

Red Hat Single Sign-On (SSO) を使用して、ユーザーを Ceph ダッシュボードに同期します。Red Hat Single Sign-On を使用したユーザーの Ceph Dashboard への同期 を参照してください。

詳細は、以下を参照してください。

前提条件

始める前に、次の前提条件が満たされていることを確認してください。

  • 稼働中の Red Hat Ceph Storage クラスターがある。
  • Dashboard がインストールされている。
  • ダッシュボードへの管理者レベルのアクセス権がある。
  • ユーザーがダッシュボードに追加されている。
  • すべてのホストでの root レベルのアクセスがある。
  • Java OpenJDK がインストールされている。詳細は、Red Hat OpenJDK ドキュメントRHEL 用 OpenJDK 8 のインストールと使用 ガイドの yum を使用して RHEL に JRE をインストールする セクションを参照してください。
  • Red hat Single Sign-On が ZIP ファイルからインストールされている。詳細は、Red Hat ドキュメント の Red Hat Single Sign-On 7.6 サーバーのインストールおよび設定ガイドZIP ファイルからの RH-SSO のインストール を参照してください。

手順

  1. IBM Storage Ceph がインストールされているシステムに Red Hat Single Sign-On 7.6.0 Server をダウンロードします。ダウンロードパッケージと情報は、Red Hat カスタマーポータルRed Hat Single Sign-On 7.6.0 Serverソフトウェア詳細 を参照してください。
  2. フォルダーを展開します。

    構文

    [root@host01 ~]# unzip rhsso-7.6.0.zip
    Copy to Clipboard Toggle word wrap

  3. 新しく作成された rhsso-7.6.0 ディレクトリーの下の standalone/configuration ディレクトリーに移動し、standalone.xml ファイルを開いて編集します。

    構文

    [root@host01 ~]# cd standalone/configuration
    [root@host01 configuration]# vi standalone.xml
    Copy to Clipboard Toggle word wrap

  4. localhost127.0.0.1 を、Red Hat Single-Sign On がインストールされているサーバーの IP アドレスに置き換えます。
  5. 新しく作成された rhsso-7.6.0 フォルダーの bin ディレクトリーから、add-user-keycloak スクリプトを実行して初期管理者ユーザーを追加します。

    構文

    [root@host01 bin]# ./add-user-keycloak.sh -u admin
    Copy to Clipboard Toggle word wrap

  6. オプション: Red Hat Enterprise Linux 8 以降を使用しているユーザーは、認証局 (CA) の問題が発生する可能性があります。CA からカスタム証明書をインポートして、正確な Java バージョンを使用するキーストアに移動します。

    構文

    keytool -import -noprompt -trustcacerts -alias ca -file ../ca.cer -keystore /etc/java/java-1.8.0-openjdk/java-1.8.0-openjdk-1.8.0.272.b10-3.el8_3.x86_64/lib/security/cacert
    Copy to Clipboard Toggle word wrap

  7. サービスを起動します。rh-sso-7.6 フォルダーの bin ディレクトリーから、standalone ブートスクリプトを実行します。

    [root@host01 bin]# ./standalone.sh
    Copy to Clipboard Toggle word wrap
  8. 作成した新しいユーザー名とパスワードを使用して、https:IP_ADDRESS:8080/auth の管理者アカウントにログインします。

    注記

    管理者アカウントは、コンソールへの初回ログイン時に作成にのみ作成する必要があります。

4.5.2.2.1. OAuth2 プロトコルを使用した Red Hat SSO で OAuth2-proxy の IdP をセットアップする

Red Hat Single Sign-On コンソールからこれらの手順を完了します。

手順

  1. レルムを作成します。レルムは Enabled である必要があります。
  2. Realm Settings に移動し、必要な設定を完了します。

    • EnabledON に切り替えます。
    • ユーザー管理アクセスON に切り替えます。
    • OpenID エンドポイント設定のリンクアドレスをクリックして、OAuth2 設定に必要なエンドポイントを取得します。発行者エンドポイントは、OAuth2 サービスの設定中に使用されます。
  3. クライアントを作成します。Client Protocolopenid-connect に設定します。
  4. クライアント設定を更新します。

  5. クライアントの認証情報を確認します。Client AuthenticatorClient Id and Secret として設定されていることを確認します。シークレットは、oauth2-proxy サービスを設定するときに client_secret parameter として使用されます。
  6. 新しい管理者ロールを作成します。ロール名として administrator と入力します。
  7. 管理者情報を更新します。

    1. Manage→Users→Add User に移動します。UsernameEmailFirst NameLast Name を入力し、Email VerifiedON に切り替えます。
    2. Credentials から、管理者ユーザーの新しいパスワード認証情報を設定します。
    3. Role Mappings から、Client Roles を手順 3 で作成したクライアントとして設定し、手順 6 で作成した administrator ロールの Add selected をクリックします。

4.5.2.3. OAuth2 Proxy サービスの有効化

Dashboard と Ceph クラスターへの SSO アクセス用に OAuth2 Proxy サービスを有効化します。cephadm CLI コマンドまたはサービス仕様ファイルを使用して oauth2-proxy サービスを有効にします。

ceph config get コマンドを実行して、oauth2-proxy コンテナーイメージを確認します。

ceph config get mgr mgr/cephadm/container_image_oauth2_proxy
Copy to Clipboard Toggle word wrap

ストレージ管理者は、container_image_oauth2_proxy cephadm モジュールオプションを変更することで、カスタムイメージを指定できます。他のデーモンが実行されていた場合は、新しいイメージを使用するためにデーモンを再デプロイする必要があります。

ceph config set mgr mgr/cephadm/container_image_oauth2_proxy NEW_OAUTH2_PROXY_IMAGE
ceph orch redeploy oauth2_proxy
Copy to Clipboard Toggle word wrap

前提条件

始める前に、次の前提条件が満たされていることを確認してください。

4.5.2.3.1. コマンドラインインターフェイスで OAuth2 Proxy サービスを有効化する

手順

  1. oauth2-proxy サービスをデプロイします。

    構文

    ceph orch apply oauth2-proxy [--placement=DESTINATION_HOST]
    Copy to Clipboard Toggle word wrap

    [ceph: root@host01 /]# ceph orch apply oauth2-proxy [--placement=host01]
    Copy to Clipboard Toggle word wrap

  2. サービスが正しくデプロイされたことを確認します。
4.5.2.3.2. サービス仕様ファイルを使用して OAuth2 Proxy サービスを有効化する

Dashboard と Ceph クラスターへの SSO アクセス用に OAuth2 Proxy サービスを有効化します。この情報を使用して、サービス仕様ファイルで oauth2-proxy サービスを有効にします。

前提条件

OAuth2 Proxy サービスを有効にする前に、oauth2-proxy サービスが実行される各 Ceph ノードに次のものがあることを確認してください。

  • クライアント ID。
  • OIDC 発行者の URL。
  • クライアントシークレット。
  • 許可する関連ドメインアドレス。

    注記

    ドメインは oidc_issuer_url と同じでも異なっていても構いません。

  • 稼働中の Red Hat Ceph Storage クラスター。
  • (オプション) ホストの HTTPS アドレスとホストポート。
  • (オプション) Cookie シークレット。
  • (オプション) SSL 証明書と証明書キー。

SSL プロトコル、暗号、証明書、証明書キーの詳細は、Red Hat Enterprise Linux ドキュメントの Web サーバーおよびリバースプロキシーのデプロイ を参照してください。

手順

  1. oauth2-proxy サービス用の YAML ファイルを作成します。

    [root@host01 ~]# touch oauth2-proxy.yaml
    Copy to Clipboard Toggle word wrap

  2. YAML ファイルを編集して、次の詳細を追加します。

    構文

    service_type: oauth2-proxy
    service_id: auth-proxy
    placement:
      hosts:
        - ceph-node-1
    spec:
     https_address: HTTPS_ADDRESS:PORT
     provider_display_name: MY OIDC PROVIDER
     client_id: CLIENT_ID
     oidc_issuer_url: OIDC ISSUER URL
     allowlist_domains:
         - HTTPS_ADDRESS:PORT
     client_secret: CLIENT_SECRET
     cookie_secret: COOKIE_SECRET
     ssl_cert: |
       -----BEGIN CERTIFICATE-----
       < YOU CERT DATA HERE >
       -----END CERTIFICATE-----
     ssl_key: |
      -----BEGIN RSA PRIVATE KEY-----
       < YOU PRIV KEY DATA HERE >
      -----END RSA PRIVATE KEY-----
    Copy to Clipboard Toggle word wrap

    service_type: oauth2-proxy
    service_id: auth-proxy
    placement:
      hosts:
        - ceph0
    spec:
     https_address: "0.0.0.0:4180"
     provider_display_name: "My OIDC Provider"
     client_id: "your-client-id"
     oidc_issuer_url: "http://192.168.100.1:5556/realms/ceph"
     allowlist_domains:
         - 192.168.100.1:8080
         - 192.168.200.1:5000
     client_secret: "your-client-secret"
     cookie_secret: "your-cookie-secret"
     ssl_cert: |
       -----BEGIN CERTIFICATE-----
       MIIDtTCCAp2gAwIBAgIYMC4xNzc1NDQxNjEzMzc2MjMyXzxvQ7EcMA0GCSqGSIb3
       DQEBCwUAMG0xCzAJBgNVBAYTAlVTMQ0wCwYDVQQIDARVdGFoMRcwFQYDVQQHDA5T
       [...]
       -----END CERTIFICATE-----
    ssl_key: |
       -----BEGIN PRIVATE KEY-----
       MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC5jdYbjtNTAKW4
       /CwQr/7wOiLGzVxChn3mmCIF3DwbL/qvTFTX2d8bDf6LjGwLYloXHscRfxszX/4h
       [...]
       -----END PRIVATE KEY-----
    Copy to Clipboard Toggle word wrap

    次の表は、仕様ファイル (ceph.deployment.service_spec.OAuth2ProxySpec) の oauth2-proxy サービスセクションに固有のフィールドを示しています。

    Expand
    表4.2 仕様ファイル内の oauth2-proxy 固有のフィールド
    フィールド説明

    allowlist_domains

    ログインまたはログアウト後の安全なリダイレクトを許可されたドメインのリスト。不正なリダイレクトを防止します。これは oidc_issuer_url と同じでも異なっていても構いません。

    client_id

    アイデンティティープロバイダーで認証するためのクライアント ID。

    client_secret

    アイデンティティープロバイダーで認証するためのクライアントシークレット。

    cookie_secret

    シークレットキーは Cookie の署名に使用されます。AES 暗号を作成するには、その長さは 16 バイト、24 バイト、または 32 バイトである必要があります。

    https_address

    HTTPS 接続のアドレス。形式は host:port です。

    networks

    デーモンにそのリスト内の特定のネットワークにのみバインドするように指示するネットワークアイデンティティーのリスト。クラスターが複数のネットワークに分散されている場合は、複数のネットワークを追加できます。

    oidc_issuer_url

    OpenID Connect (OIDC) 発行者の URL。

    placement

    オーケストレーターがサービスをデプロイするには、デーモンをどこにデプロイするか、またいくつデプロイするかを知る必要があります。これは配置仕様のロールです。配置仕様は、コマンドライン引数として渡すことも、YAML ファイルで渡すこともできます。詳細は、Ceph Orchestrator を使用したサービスの管理 を参照してください。

    provider_display_name

    UI でのアイデンティティープロバイダー (IDP) の表示名。

    redirect_url

    オプション: ログインが成功した後に oauth2-proxy がリダイレクトする URL。指定されない場合は、cephadm によってこの URL の値が自動的に計算されます。

    ssl_cert

    SSL 証明書を含む複数行の文字列。

    ssl_key

    SSL キーを含む複数行の文字列。

  3. 仕様ファイルを適用します。

    構文

    [root@host01 ~]# ceph orch apply -i oauth2-proxy.yaml
    Copy to Clipboard Toggle word wrap

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat