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'
DEFAULT_NGINX_IMAGE = 'quay.io/ceph/NGINX_IMAGE'Copy to Clipboard Copied! Toggle word wrap Toggle overflow ストレージ管理者は、
container_image_nginxcephadm モジュールオプションを変更することで、使用されているイメージを変更できます。他のデーモンが実行されていた場合は、新しいイメージを使用するためにデーモンを再デプロイする必要があります。ceph config set mgr mgr/cephadm/container_image_nginx NEW_NGINX_IMAGE ceph orch redeploy mgmt-gateway
ceph config set mgr mgr/cephadm/container_image_nginx NEW_NGINX_IMAGE ceph orch redeploy mgmt-gatewayCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.5.1.2. コマンドラインインターフェイスで Ceph Management ゲートウェイを有効にする リンクのコピーリンクがクリップボードにコピーされました!
Dashboard と Ceph クラスターへの SSO アクセスのために Ceph Management ゲートウェイを有効にします。この情報を使用して、cephadm CLI コマンドで mgmt-gateway サービスを有効にします。
手順
mgmt-gateway サービスをデプロイします。
構文
ceph orch apply mgmt-gateway [--placement=DESTINATION_HOST] [--enable-auth=true]
ceph orch apply mgmt-gateway [--placement=DESTINATION_HOST] [--enable-auth=true]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記oauth2-proxyで SSO を有効にするには、--enable-auth=trueパラメーターが必須です。例
[ceph: root@host01 /]# ceph orch apply mgmt-gateway --placement=host01
[ceph: root@host01 /]# ceph orch apply mgmt-gateway --placement=host01Copy to Clipboard Copied! Toggle word wrap Toggle overflow - サービスが正しくデプロイされたことを確認します。
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 サーバーおよびリバースプロキシーのデプロイ を参照してください。
手順
mgmt-gatewayサービス用の YAML ファイルを作成します。例
touch mgmt-gateway.yaml
[root@host01 ~]# touch mgmt-gateway.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow YAML ファイルを編集して、次の詳細を追加します。
重要次のフィールドはオプションです:
ssl_protocols、ssl_ciphers、およびssl_certificate。省略すると、mgmt-gatewayサービスは安全でセキュアな設定を使用します。これらのフィールドを変更することは許可されていますが、システムのセキュリティーが侵害される可能性があるため、注意して行う必要があります。構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要TLSv1.3 SSL プロトコルを使用します。TLSv1.3 には、デフォルトで安全な暗号のセットが含まれています。TLSv1.2 はサポートされていますが、このプロトコルを使用する場合は、安全な暗号のサブセットのみを使用することが重要です。弱い暗号や古い暗号を使用すると、システムのセキュリティーが著しく損なわれる可能性があります。
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の表は、仕様ファイル (
ceph.deployment.service_spec.MgmtGatewaySpec) のmgmt-gatewayサービスセクションに固有のフィールドを示しています。Expand 表4.1 仕様ファイル内の mgmt-gateway 固有のフィールド フィールド 説明 disable_httpsHTTPS を無効にするフラグです。True の場合、サーバーは安全でない HTTP を使用します。
enable_authSSO auth を有効にするフラグです。SSO 認証には oauth2-proxy がアクティブである必要があります。
networksデーモンにそのリスト内の特定のネットワークにのみバインドするように指示するネットワークアイデンティティーのリスト。クラスターが複数のネットワークに分散されている場合は、複数のネットワークを追加できます。
placementオーケストレーターがサービスをデプロイするには、デーモンをどこにデプロイするか、またいくつデプロイするかを知る必要があります。これは配置仕様のロールです。配置仕様は、コマンドライン引数として渡すことも、YAML ファイルで渡すこともできます。詳細は、Ceph Orchestrator を使用したサービスの管理 を参照してください。
ポートサーバーがリッスンするポート番号。
server_tokens応答内のフラグ制御サーバートークン:
on、off、build、string。ssl_certSSL 証明書を含む複数行の文字列。
ssl_keySSL キーを含む複数行の文字列。
ssl_ciphersサポートされている安全な SSL 暗号のリスト。このリストを変更すると、システムのセキュリティーが低下する可能性があります。
ssl_prefer_server_ciphersクライアント暗号よりもサーバー暗号を優先する:
on、off。ssl_protocolsサポートされている SSL プロトコルのリスト (nginx でサポートされているもの)。
ssl_session_cacheSSL/TLS セッションがキャッシュされる期間:
off、none、[builtin[:size]]、[shared:name:size]。ssl_session_ticketsセッションチケットを制御するための複数オプションフラグ:
on、off。ssl_session_timeoutSSL セッションタイムアウトの期間。構文: 時間 (例:
5m)。ssl_staplingSSL ステープルを有効または無効にするフラグ:
on、off。ssl_stapling_verifySSL ステープルの検証を制御するフラグ:
on、off。仕様ファイルを適用します。
構文
ceph orch apply -i mgmt-gateway.yaml
[root@host01 ~]# ceph orch apply -i mgmt-gateway.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
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 Docs の OAuth プロバイダー設定 を参照してください。
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 のインストール を参照してください。
手順
- IBM Storage Ceph がインストールされているシステムに Red Hat Single Sign-On 7.6.0 Server をダウンロードします。ダウンロードパッケージと情報は、Red Hat カスタマーポータル の Red Hat Single Sign-On 7.6.0 Server の ソフトウェア詳細 を参照してください。
フォルダーを展開します。
構文
unzip rhsso-7.6.0.zip
[root@host01 ~]# unzip rhsso-7.6.0.zipCopy to Clipboard Copied! Toggle word wrap Toggle overflow 新しく作成された
rhsso-7.6.0ディレクトリーの下のstandalone/configurationディレクトリーに移動し、standalone.xmlファイルを開いて編集します。構文
cd standalone/configuration vi standalone.xml
[root@host01 ~]# cd standalone/configuration [root@host01 configuration]# vi standalone.xmlCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
localhostと127.0.0.1を、Red Hat Single-Sign On がインストールされているサーバーの IP アドレスに置き換えます。 新しく作成された
rhsso-7.6.0フォルダーのbinディレクトリーから、add-user-keycloakスクリプトを実行して初期管理者ユーザーを追加します。構文
./add-user-keycloak.sh -u admin
[root@host01 bin]# ./add-user-keycloak.sh -u adminCopy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 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
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/cacertCopy to Clipboard Copied! Toggle word wrap Toggle overflow サービスを起動します。
rh-sso-7.6フォルダーのbinディレクトリーから、standaloneブートスクリプトを実行します。./standalone.sh
[root@host01 bin]# ./standalone.shCopy to Clipboard Copied! Toggle word wrap Toggle overflow 作成した新しいユーザー名とパスワードを使用して、
https:IP_ADDRESS:8080/authの管理者アカウントにログインします。注記管理者アカウントは、コンソールへの初回ログイン時に作成にのみ作成する必要があります。
4.5.2.2.1. OAuth2 プロトコルを使用した Red Hat SSO で OAuth2-proxy の IdP をセットアップする リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Single Sign-On コンソールからこれらの手順を完了します。
手順
- レルムを作成します。レルムは Enabled である必要があります。
Realm Settings に移動し、必要な設定を完了します。
- Enabled を ON に切り替えます。
- ユーザー管理アクセス を ON に切り替えます。
- OpenID エンドポイント設定のリンクアドレスをクリックして、OAuth2 設定に必要なエンドポイントを取得します。発行者エンドポイントは、OAuth2 サービスの設定中に使用されます。
- クライアントを作成します。Client Protocol を openid-connect に設定します。
クライアント設定を更新します。
- Access Type を confidential に設定します。
Valid Redirect URIs を入力します。以下に例を示します。
https://<ip|hostname>/oauth2/callbackおよびhttps://<ip|hostname>/oauth2/sign_out
-
クライアントの認証情報を確認します。Client Authenticator が Client Id and Secret として設定されていることを確認します。シークレットは、
oauth2-proxyサービスを設定するときにclient_secret parameterとして使用されます。 -
新しい管理者ロールを作成します。ロール名として
administratorと入力します。 管理者情報を更新します。
- Manage→Users→Add User に移動します。Username、Email、First Name、Last Name を入力し、Email Verified を ON に切り替えます。
- Credentials から、管理者ユーザーの新しいパスワード認証情報を設定します。
- 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
ceph config get mgr mgr/cephadm/container_image_oauth2_proxy
ストレージ管理者は、container_image_oauth2_proxy cephadm モジュールオプションを変更することで、カスタムイメージを指定できます。他のデーモンが実行されていた場合は、新しいイメージを使用するためにデーモンを再デプロイする必要があります。
ceph config set mgr mgr/cephadm/container_image_oauth2_proxy NEW_OAUTH2_PROXY_IMAGE ceph orch redeploy oauth2_proxy
ceph config set mgr mgr/cephadm/container_image_oauth2_proxy NEW_OAUTH2_PROXY_IMAGE
ceph orch redeploy oauth2_proxy
前提条件
始める前に、次の前提条件が満たされていることを確認してください。
-
Ceph Management ゲートウェイ (
mgmt-gateway) サービスが有効化され、--enable-authが true に設定されている。詳細は、Ceph Management ゲートウェイ (mgmt-gateway) の使用 を参照してください。 - OAuth2 プロトコルが実行されている Red Hat Single-Sign-On 7.6.0 または OAuth2 プロトコルが実行されている IBM Security Verify の管理者アカウントが必要です。詳細は、OAuth2 プロトコルを使用して IBM Security Verify をアイデンティティープロバイダーとして設定する を参照してください。
4.5.2.3.1. コマンドラインインターフェイスで OAuth2 Proxy サービスを有効化する リンクのコピーリンクがクリップボードにコピーされました!
手順
oauth2-proxyサービスをデプロイします。構文
ceph orch apply oauth2-proxy [--placement=DESTINATION_HOST]
ceph orch apply oauth2-proxy [--placement=DESTINATION_HOST]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# ceph orch apply oauth2-proxy [--placement=host01]
[ceph: root@host01 /]# ceph orch apply oauth2-proxy [--placement=host01]Copy to Clipboard Copied! Toggle word wrap Toggle overflow - サービスが正しくデプロイされたことを確認します。
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 サーバーおよびリバースプロキシーのデプロイ を参照してください。
手順
oauth2-proxyサービス用の YAML ファイルを作成します。例
touch oauth2-proxy.yaml
[root@host01 ~]# touch oauth2-proxy.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow YAML ファイルを編集して、次の詳細を追加します。
構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の表は、仕様ファイル (
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_addressHTTPS 接続のアドレス。形式は
host:portです。networksデーモンにそのリスト内の特定のネットワークにのみバインドするように指示するネットワークアイデンティティーのリスト。クラスターが複数のネットワークに分散されている場合は、複数のネットワークを追加できます。
oidc_issuer_urlOpenID Connect (OIDC) 発行者の URL。
placementオーケストレーターがサービスをデプロイするには、デーモンをどこにデプロイするか、またいくつデプロイするかを知る必要があります。これは配置仕様のロールです。配置仕様は、コマンドライン引数として渡すことも、YAML ファイルで渡すこともできます。詳細は、Ceph Orchestrator を使用したサービスの管理 を参照してください。
provider_display_nameUI でのアイデンティティープロバイダー (IDP) の表示名。
redirect_urlオプション: ログインが成功した後に oauth2-proxy がリダイレクトする URL。指定されない場合は、cephadm によってこの URL の値が自動的に計算されます。
ssl_certSSL 証明書を含む複数行の文字列。
ssl_keySSL キーを含む複数行の文字列。
仕様ファイルを適用します。
構文
ceph orch apply -i oauth2-proxy.yaml
[root@host01 ~]# ceph orch apply -i oauth2-proxy.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow