4.3. OpenID Connect を使用した JBoss EAP 管理コンソールの保護
OpenID Connect (OIDC) を使用して JBoss EAP 管理コンソールを保護すると、JBoss EAP は、ユーザーが管理コンソールにログインできるように、OIDC プロバイダーにリダイレクトします。
前提条件
OIDC プロバイダーで必要なクライアントを設定している。
詳細は、JBoss EAP 管理コンソールを保護するための Red Hat build of Keycloak の設定 を参照してください。
手順
elytron-oidc-client
サブシステムで OIDC プロバイダーを設定します。構文
/subsystem=elytron-oidc-client/provider=keycloak:add(provider-url=<OIDC_provider_URL>)
例:
/subsystem=elytron-oidc-client/provider=keycloak:add(provider-url=http://localhost:8180/realms/example_jboss_infra)
管理インターフェイスを保護するために、
wildfly-management
という名前のsecure-deployment
リソースを作成します。構文
/subsystem=elytron-oidc-client/secure-deployment=wildfly-management:add(provider=<OIDC_provider_name>,client-id=<OIDC_client_name>,principal-attribute=<attribute_to_use_as_principal>,bearer-only=true,ssl-required=<internal_or_external>)
例:
/subsystem=elytron-oidc-client/secure-deployment=wildfly-management:add(provider=keycloak,client-id=jboss-management,principal-attribute=preferred_username,bearer-only=true,ssl-required=EXTERNAL)
オプション: 次のコマンドを使用して、ロールベースのアクセス制御 (RBAC) を有効にできます。
/core-service=management/access=authorization:write-attribute(name=provider,value=rbac) /core-service=management/access=authorization:write-attribute(name=use-identity-roles,value=true)
jboss-console
クライアントを参照するwildfly-console
という名前のsecure-server
リソースを作成します。構文
/subsystem=elytron-oidc-client/secure-server=wildfly-console:add(provider=<OIDC_provider_name>,client-id=<OIDC_client_name>,public-client=true)
例:
/subsystem=elytron-oidc-client/secure-server=wildfly-console:add(provider=keycloak,client-id=jboss-console,public-client=true)
重要JBoss EAP 管理コンソールには、
wildfly-console
という特定の名前のsecure-server
リソースが必要です。
検証
管理コンソールにアクセスします。デフォルトでは、管理コンソールには http://localhost:9990 からアクセスできます。
OIDC プロバイダーにリダイレクトされます。
- OIDC プロバイダーで作成したユーザーの認証情報を使用してログインします。
これで、JBoss EAP 管理コンソールが OIDC で保護されました。