2.10. Ceph Dashboard のシングルサインオンの有効化
Ceph Dashboard は、Security Assertion Markup Language (SAML) プロトコルを使用したユーザーの外部認証をサポートします。Ceph ダッシュボードにシングルサインオン (SSO) を使用する前に、ダッシュボードのユーザーアカウントを作成して必要なロールを割り当てます。Ceph Dashboard はユーザーの承認を実行し、認証プロセスは既存のアイデンティティープロバイダー (IdP) によって実行されます。Red Hat は、Keycloak を使用してダッシュボードの SSO 機能をテストします。
前提条件
- 稼働中の Red Hat Ceph Storage クラスター
- Ceph Dashboard ソフトウェアのインストール
- Dashboard を起動します。
- Ceph Manager ノードへのルートレベルのアクセス。
以下のライブラリーパッケージを Ceph Manager ノードにインストールします。
-
python3-saml
-
python3-defusedxml
-
python3-isodate
-
python3-xmlsec
-
手順
Ceph Dashboard で SSO を設定するには、以下のコマンドを実行します。
ベアメタル デプロイメント:
構文
ceph dashboard sso setup saml2 CEPH_DASHBOARD_BASE_URL IDP_METADATA IDP_USERNAME_ATTRIBUTE IDP_ENTITY_ID SP_X_509_CERT SP_PRIVATE_KEY
ceph dashboard sso setup saml2 CEPH_DASHBOARD_BASE_URL IDP_METADATA IDP_USERNAME_ATTRIBUTE IDP_ENTITY_ID SP_X_509_CERT SP_PRIVATE_KEY
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
ceph dashboard sso setup saml2 http://dashboard_hostname.ceph.redhat.com:8443 idp-metadata.xml username http://10.70.59.125:8080/auth/realms/realm_name /home/certificate.txt /home/private-key.txt
[root@mon ~]# ceph dashboard sso setup saml2 http://dashboard_hostname.ceph.redhat.com:8443 idp-metadata.xml username http://10.70.59.125:8080/auth/realms/realm_name /home/certificate.txt /home/private-key.txt
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンテナー デプロイメント:
構文
podman exec CEPH_MGR_NODE ceph dashboard sso setup saml2 CEPH_DASHBOARD_BASE_URL IDP_METADATA IDP_USERNAME_ATTRIBUTE IDP_ENTITY_ID SP_X_509_CERT SP_PRIVATE_KEY
podman exec CEPH_MGR_NODE ceph dashboard sso setup saml2 CEPH_DASHBOARD_BASE_URL IDP_METADATA IDP_USERNAME_ATTRIBUTE IDP_ENTITY_ID SP_X_509_CERT SP_PRIVATE_KEY
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
podman exec ceph-mgr-hostname ceph dashboard sso setup saml2 http://dashboard_hostname.ceph.redhat.com:8443 idp-metadata.xml username http://10.70.59.125:8080/auth/realms/realm_name /home/certificate.txt /home/private-key.txt
[root@mon ~]# podman exec ceph-mgr-hostname ceph dashboard sso setup saml2 http://dashboard_hostname.ceph.redhat.com:8443 idp-metadata.xml username http://10.70.59.125:8080/auth/realms/realm_name /home/certificate.txt /home/private-key.txt
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
置き換え
-
Ceph
mgr
ノードを使用した CEPH_MGR_NODE。例:ceph-mgr-hostname
- CEPH_DASHBOARD_BASE_URL は、Ceph Dashboard にアクセスできるベース URL に置き換えます。
- IDP_METADATA は、リモートパスまたはローカルパス、または IdP メタデータ XML の内容への URL に置き換えます。サポートされる URL タイプは http、https、およびファイルです。
- 任意: IDP_USERNAME_ATTRIBUTE は、認証応答からユーザー名を取得するために使用される属性に置き換えます。デフォルトは uid です。
- 任意: IDP_ENTITY_ID は、IdP メタデータに複数のエンティティー ID が存在する場合は IdP エンティティー ID に置き換えます。
- 任意: SP_X_509_CERT は、署名および暗号化に Ceph Dashboard によって使用される証明書のファイルパスに置き換えます。
- 任意: SP_PRIVATE_KEY は、署名および暗号化に Ceph Dashboard によって使用される秘密鍵のファイルパスに置き換えます。
現在の SAML 2.0 設定を確認します。
ベアメタル デプロイメント:
構文
ceph dashboard sso show saml2
ceph dashboard sso show saml2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンテナー デプロイメント:
構文
podman exec CEPH_MGR_NODE ceph dashboard sso show saml2
podman exec CEPH_MGR_NODE ceph dashboard sso show saml2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
SSO を有効にするには、以下のコマンドを実行します。
ベアメタル デプロイメント:
構文
ceph dashboard sso enable saml2 SSO is "enabled" with "SAML2" protocol.
ceph dashboard sso enable saml2 SSO is "enabled" with "SAML2" protocol.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンテナー デプロイメント:
構文
podman exec CEPH_MGR_NODE ceph dashboard sso enable saml2 SSO is "enabled" with "SAML2" protocol.
podman exec CEPH_MGR_NODE ceph dashboard sso enable saml2 SSO is "enabled" with "SAML2" protocol.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ダッシュボードの URL を開きます。以下は例になります。
http://dashboard_hostname.ceph.redhat.com:8443
http://dashboard_hostname.ceph.redhat.com:8443
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - SSO ページで、ログインの認証情報を入力します。SSO はダッシュボードの Web インターフェイスにリダイレクトされます。
関連情報
- シングルサインオンを無効にするには、Red Hat Ceph Storage ダッシュボードガイドの DCeph Dashboard のシングルサインオンの無効化 を参照してください。