第 9 章 SATELLITE SERVER および CAPSULE SERVER のバック アップ
14.8. 外部認証用の SATELLITE と RED HAT SINGLE SIGN ON の統合
# ipa hostgroup-add hostgroup_name --desc=hostgroup_description
2. automembership ルールを作成します。
# ipa automember-add --type=hostgroup hostgroup_name automember_rule 以下のオプションを使用できる場所:
automember-add は automember グループとしてグループにフラグを立てます。
--type=hostgroup は、ターゲットグループがユーザーグループではなく、ホストグループ
であることを特定します。
automember_rule は、automember ルールの識別に使用する名前を追加します。
3. userclass 属性に基づいて automembership の条件を定義します。
# ipa automember-add-condition --key=userclass --type=hostgroup --inclusive-regex=^webserver hostgroup_name
---Added condition(s) to "hostgroup_name"
---Automember Rule: automember_rule Inclusive Regex: userclass=^webserver
---Number of conditions added 1
---以下のオプションを使用できる場所:
automember-add-condition では、グループメンバーを識別する正規表現の条件を追加し ます。
--key=userclass はキー属性を userclass に指定します。
--type=hostgroup は、ターゲットグループがユーザーグループではなく、ホストグループ
であることを特定します。
--inclusive-regex= ^webserver は、正規表現パターンで一致する値を識別します。
hostgroup_name: ターゲットホストグループの名前を識別します。
システムが Satellite Server の hostgroup_name ホストグループに追加されると、そのシステムは、
Red Hat Identity Management サーバーの "hostgroup_name" ホストグループに自動的に追加されま す。Red Hat Identity Management ホストグループは、HBAC (ホストベースアクセス制御)、sudo ポリ シー、およびその他の Red Hat Identity Management 機能を許可します。
HTTP ではなく、HTTPS を使用する Red Hat Single Sign On サーバーを正常にインストールし ている。
証明書または CA が自己署名されている場合は、それらがエンドユーザー証明書トラストスト アに追加されていることを確認する。
手順 手順
1. 以下のパッケージをインストールします。
# satellite-maintain packages install mod_auth_openidc keycloak-httpd-client-install 2. Satellite Server に、Red Hat Single Sign On httpd クライアントをインストールします。
# keycloak-httpd-client-install --app-name foreman-openidc \ --keycloak-server-url "RHSSO.example.com" \
--keycloak-admin-username "RHSSO_User" \ --keycloak-realm "RHSSO_Realm" \
--keycloak-admin-realm master \
--keycloak-auth-role root-admin -t openidc -l /users/extlogin --force
上記のコマンドは、Red Hat Single Sign On に Satellite のクライアントを登録します。
3. satellite-installer を使用して Red Hat Single Sign On を有効にします。
# satellite-installer --foreman-keycloak true \
--foreman-keycloak-app-name "foreman-openidc" \ --foreman-keycloak-realm "RHSSO_Realm"
4. httpd サービスを再起動します。
# systemctl restart httpd
5. Red Hat Single Sign-On Web UI で、クライアントクライアントに移動し、Satellite クライアントをクリッ クします。
6. アクセスタイプアクセスタイプ設定が機密機密に設定されていることを確認してください。
7. Red Hat Single Sign-On バージョン7.3 以降を使用している場合は、以下の手順を実行します。
a. Red Hat Single Sign-On Web UI に移動し、クライアントクライアントをクリックして、Satellite に登録 されているクライアントをクリックします。
b. デフォルトで 1 つのリダイレクト URI を含む有効なリダイレクト有効なリダイレクト URI フィールドを見つけ ます。https://satellite.example.com/users/extlogin の形式で有効なリダイレクト有効なリダイレクト URI を 追加します。
c. 保存をクリックします。保存
d. マッパーマッパータブをクリックし、作成作成をクリックします。オーディエンスマッパーに以下の値 を設定します。
マッパータイプ
マッパータイプリストから、オーディエンスオーディエンスを選択します。
Satellite
組み込み済みクライアントオーディエンス
組み込み済みクライアントオーディエンスリストから、Satellite で使用するクライア ントを選択します。
オーディエンスサポートの詳細は、『Red Hat Single Sign On Server Administration Guide』の「Audience Support」を参照してください。
e. 保存をクリックします。保存
f. マッパーマッパータブをクリックし、作成作成をクリックしてグループマッパーを追加します。これに より、グループメンバーシップに基づいて Satellite で認証を指定できるようになります。
グループマッパーに以下の値を設定します。
マッパータイプ
マッパータイプリストから、グループメンバーシップグループメンバーシップを選択します。
トークンクレーム名
トークンクレーム名にグループグループを入力します。
フルグループパス
フルグループパストグルを OFF に設定します。
グループマッパーの詳細は、『Red Hat Single Sign On Server Administration
Guide』の「LDAP Mappers 」セクションに記載されている「Group Mapper」を参照 してください。
g. 保存をクリックします。保存
h. グループグループに移動し、New をクリックします。
グループの名前名前を入力します。
保存
保存をクリックします。
i. ユーザーユーザーに移動してユーザーの追加ユーザーの追加をクリックします。
Username、 Email などのユーザーの情報を入力し、User Enabled を ON に切り替え ます。
保存
保存をクリックすると、ユーザーが作成されます。
認証情報
認証情報タブをクリックして、パスワードの管理パスワードの管理でユーザーパスワードをリセットし ます。新規パスワード新規パスワードを入力し、パスワードを確定して、一時一時を OFF に切り替えて から、パスワードのリセットパスワードのリセットをクリックします。
Groups タブをクリックして、利用可能なグループ利用可能なグループ一覧から参加させるグループを選択 し、参加参加をクリックします。これで、ユーザーは選択したグループに所属します。
8. Satellite Web UI で、管理管理 > ユーザーグループユーザーグループに移動します。
9. ユーザーグループの作成ユーザーグループの作成をクリックして、ユーザーグループの名前名前を入力します。
10. ロールロールタブをクリックして、適切なロールをユーザーグループに割り当てます。
11. 外部グループ外部グループタブで外部ユーザーグループのの追加外部ユーザーグループのの追加をクリックします。
12. Red Hat Single Sign-On Web UI で作成したグループ名を入力します。
13. 送信送信をクリックします。
14. 管理管理 > 設定設定に移動して、認証認証タブをクリックします。
15. ログイン委任の認証ログイン委任の認証行を見つけ、値値コラムで、値を Yes に設定します。
16. Authorize login delegation auth source user autocreate行を見つけ、値値コラムで、値を External に設定します。
17. ログイン委任のログアウトログイン委任のログアウト URL 行を見つけ、値値コラムで、値を https://satellite.example.com/users/extlogout に設定します。
以下の手順では、URL RHSSO.example.com/auth/realms/RHSSO_REALM/.well-known/openid-configuration に移動して、必要とする値を取得することができます。
18. OIDC アルゴリズムアルゴリズム行を見つけ、値値コラムで、Red Hat Single Sign On のエンコーティングの アルゴリズムを設定します (例: RS256)。
19. OIDC オーディエンスオーディエンス行を見つけ、値値コラムで、値を Red Hat Single Sign On のクライアント ID (['satellite.example.com-foreman-openidc']) に設定します。
20. OIDC 発行者発行者行を見つけ、値値コラムで、値を
RHSSO.example.com/auth/realms/RHSSO_Realm に設定します。
21. OIDC JWKs URL 行を見つけ、値値コラムで、値を
RHSSO.example.com/auth/realms/RHSSO_Realm/protocol/openid-connect/certs に設定し ます。
22. 認証元の組織とロケーションを設定するには、以下の手順を実行します。
a. 管理管理 > 認証元認証元に移動します。
b. 外部外部の隣にあるオプションメニューをクリックして、編集編集をクリックします。
c. ロケーションロケーションタブをクリックして、すべての項目すべての項目一覧から、ロケーションを選択します。
d. 組織組織タブをクリックして、すべての項目すべての項目から組織を選択します。
e. 送信送信をクリックします。
https://satellite.example.com/users/extlogin ログイン URL を使用して認証できるようになりまし た。
CLI をご利用の場合をご利用の場合
1. 以下のパッケージをインストールします。
# satellite-maintain packages install keycloak-httpd-client-install
2. Satellite Server に、Red Hat Single Sign On httpd クライアントをインストールします。
# keycloak-httpd-client-install --app-name hammer-openidc \ --keycloak-server-url "RHSSO.example.com" \
--keycloak-admin-username "RHSSO_User" \ --keycloak-realm "RHSSO_Realm" \
--keycloak-admin-realm master \
--keycloak-auth-role root-admin -t openidc -l /users/extlogin --force
このコマンドは、Red Hat Single Sign On で Satellite のクライアントを作成します。
3. satellite-installer を使用して Red Hat Single Sign On を有効にします。
# satellite-installer --foreman-keycloak true \
--foreman-keycloak-app-name "hammer-openidc" \ --foreman-keycloak-realm "RHSSO_Realm"
4. httpd サービスを再起動します。
# systemctl restart httpd
5. Red Hat Single Sign-On Web UI で、クライアントクライアントに移動し、Satellite クライアントをクリッ クします。
6. アクセスタイプアクセスタイプ設定をパブリックパブリックに設定します。
7. 有効なリダイレクト有効なリダイレクト URLフィールドに、urn:ietf:wg:oauth:2.0:oob と入力します。
8. Red Hat Single Sign-On バージョン7.3 以降を使用している場合は、以下の手順を実行します。
a. Red Hat Single Sign-On Web UI に移動し、クライアントクライアントをクリックして、Satellite に登録 されているクライアントをクリックします。
b. デフォルトで 1 つのリダイレクト URI を含む有効なリダイレクト有効なリダイレクト URI フィールドを見つけ ます。https://satellite.example.com/users/extlogin の形式で有効なリダイレクト有効なリダイレクト URI を 追加します。
c. 保存をクリックします。保存
d. マッパーマッパータブをクリックし、作成作成をクリックします。オーディエンスマッパーに以下の値 を設定します。
マッパータイプ
マッパータイプリストから、オーディエンスオーディエンスを選択します。
組み込み済みクライアントオーディエンス
組み込み済みクライアントオーディエンスリストから、Satellite で使用するクライア ントを選択します。
オーディエンスサポートの詳細は、『Red Hat Single Sign On Server Administration Guide』の「Audience Support」を参照してください。
e. 保存をクリックします。保存
f. マッパーマッパータブをクリックし、作成作成をクリックしてグループマッパーを追加します。これに より、グループメンバーシップに基づいて Satellite で認証を指定できるようになります。
グループマッパーに以下の値を設定します。
マッパータイプ
マッパータイプリストから、グループメンバーシップグループメンバーシップを選択します。
トークンクレーム名
トークンクレーム名リストから、グループグループを選択します。
フルグループパス
フルグループパストグルを OFF に設定します。
グループマッパーの詳細は、『Red Hat Single Sign On Server Administration
Guide』の「LDAP Mappers 」セクションに記載されている「Group Mapper」を参照 してください。
g. 保存をクリックします。保存
9. Satellite で、ログイン委任を true に設定し、ユーザーが Open IDC プロトコルを使用して認証
できるようにします。