4.5. Red Hat Single Sign-On サーバーの管理者アカウントの作成
Red Hat Single Sign-Onは、事前設定された管理アカウントをそのまま提供しません。この管理者アカウントは、master
レルムの管理コンソールにログインして、レルムやユーザーの作成Red Hat Single Sign-On でセキュリティー保護するためのアプリケーションの登録などのサーバーメンテナンス操作を実行するために必要です。
管理者アカウントは、以下の方法で作成できます。
- Red Hat Single Sign-On アプリケーションテンプレートのデプロイ時に SSO_ADMIN_USERNAME および SSO_ADMIN_PASSWORD パラメーター の値を提供することで。
- OpenShift イメージの Red Hat Single Sign-On がアプリケーションテンプレートなしでデプロイされる場合に、特定の Red Hat Single Sign-On Pod へのリモートシェルセッション で。
Red Hat Single Sign-On では、初期管理者アカウントを Welcome Page の Web フォームを介して作成することができますが、ウェルカムページが localhost からアクセスされている場合に限ります。この管理者アカウント作成方法は、Red Hat Single Sign-On for OpenShift イメージには適用されません。
4.5.1. テンプレートパラメーターを使用した管理者アカウントの作成
Red Hat Single Sign-On アプリケーションテンプレートをデプロイする場合は、SSO_ADMIN_USERNAME パラメーターおよび SSO_ADMIN_PASSWORD パラメーターは、master
レルム用に作成される Red Hat Single Sign-On サーバーの管理者アカウントのユーザー名とパスワードを示します。
これらのパラメーターはいずれも必須です。指定されていない場合、それらはテンプレートがインスタンス化される時に OpenShift 命令メッセージとして自動生成され、表示されます。
Red Hat Single Sign-On サーバーの管理者アカウントのライフサイクルは、Red Hat Single Sign-On サーバーのデータベースを保存するために使用するストレージタイプによって異なります。
- インメモリーデータベースモード (sso74-https テンプレートおよび sso74-x509-https テンプレート) の場合、アカウントは特定の Red Hat Single Sign-On Pod のライフサイクル全体で存在します (保存されたアカウントデータは Pod の破棄時に失われます)。
- 一時データベースモード (sso74-postgresql テンプレート) の場合、アカウントはデータベース Pod のライフサイクル全体で存在します。Red Hat Single Sign-On Pod が破壊的な場合でも、保存されたアカウントデータは、データベース Pod が実行中であることを前提として保持されます。
- 永続的データベースモード (sso74-postgresql-persistent および sso74-x509-postgresql-persistent テンプレート) の場合、アカウントは、データベースデータを保持するのに使用される永続的メディアのライフサイクル全体で存在します。つまり、Red Hat Single Sign-On とデータベース Pod の両方が破壊されても、保存されたアカウントデータは保持されます。
Red Hat Single Sign-On アプリケーションテンプレートをデプロイして、(新しい Red Hat Single Sign-On アプリケーションをインスタンス化する必要があるたびに) アプリケーションに対応する OpenShift デプロイメント設定を取得し、そのデプロイメント設定を複数回再利用することが一般的です。
RH_SSO サーバーの管理者アカウントを作成したら 一時的または永続的データベースモード の場合、新しい Red Hat Single Sign-On アプリケーションをデプロイする前に、デプロイメント設定から SSO_ADMIN_USERNAME 変数および SSO_ADMIN_PASSWORD 変数を削除します。
以下のコマンドを実行して、管理者アカウントの作成後に再利用できるように、Red Hat Single Sign-On アプリケーションのデプロイメント設定を作成します。
Red Hat Single Sign-On アプリケーションのデプロイメント設定を特定します。
$ oc get dc -o name deploymentconfig/sso deploymentconfig/sso-postgresql
SSO_ADMIN_USERNAME および SSO_ADMIN_PASSWORD 変数の設定を削除します。
$ oc set env dc/sso \ -e SSO_ADMIN_USERNAME="" \ -e SSO_ADMIN_PASSWORD=""